我想计算'sizeof'数组:
char* arr[] = { "abc", "def" };
当我sizeof
在数组初始化后立即手动调用时,它工作正常。但是,如果我将数组传递给某个函数,它不会给出相同的结果。
int test(char* b[]) {
return (int)sizeof(b);
}
int _tmain(int argc, _TCHAR* argv[])
{
char* arr[] = { "abc", "def" };
int p = test(arr); // gives 4
int k = sizeof(arr); // gives 8
...
}
所以有什么问题?对不起新手的问题,但我真的很想念它。