当memset遇到函数参数中的指针时

    技术2022-05-17  60

    先想想下面的程序输出什么?

    #include <string.h> #include <stdio.h> char str[10] = "dgdsf"; int num[10]; void test(char *ab, int *nn) { printf("%d/n",sizeof(ab)); printf("%d/n",sizeof(str)); printf("%d/n",strlen(ab)); printf("%d/n",strlen(str)); printf("%d/n", sizeof(nn)); printf("%d/n", sizeof(num)); } int main() { test(str, num); return 0; } 

    输出结果:41055440

     

    只知道sizeof是个宏,不知道为什么会这样。所以对于这种情况,用memset的童鞋小心了。


    最新回复(0)