我遇到了一个问题,因为我不知道 sizeof 运算符是如何工作的。谁能告诉我为什么它在下面的代码中给了我 4?
int tab[2] = {1, 5};
int *filePathTab[1] = {NULL};
filePathTab[0] = tab;
cout << sizeof(filePathTab[0]);
最佳答案
filePathTab[0]
有一个 int *
作为它的元素。您机器上的 sizeof
和 int *
是 4 个字节。如果你想知道 sizeof
int *
指向什么,一个 int
,你必须取消引用指针:
cout << sizeof(*filePathTab[0]);
结果可能是您机器上的 sizeof
和 int
也是 4 个字节。
关于c++ - sizeof 运算符和多维表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21029104/