【发布时间】:2017-06-26 05:10:05
【问题描述】:
我正在尝试创建二维动态数组。
我的代码
char **tab;
tab = malloc(3 * sizeof(char *));
printf("%zu\n", sizeof(char *));
printf("%p\n", tab);
tab++;
printf("%p\n", tab);
tab++;
printf("%p\n", tab);
return 0;
它给了我以下输出。
8
0xfcd010
0xfcd018
0xfcd020
我的问题是为什么第二个和第三个元素之间的区别只有2?
【问题讨论】:
-
不是——那是十六进制,相差8。
-
...
8 9 A B C D E F 0.... -
题名和实际题有什么关系?