指针大小:固定还是可变?
在 C 中,指针具有固定大小,根据底层架构而有所不同。通常,在 32 位系统上,指针占用 32 位内存,而在 64 位系统上,它们占用 64 位。这个固定大小可以从下面的代码片段中看出:
int x = 10; int *xPtr = &x; char y = 'a'; char *yPtr = &y; std::cout << sizeof(x) << "\n"; std::cout << sizeof(xPtr) << "\n"; std::cout << sizeof(y) << "\n"; std::cout << sizeof(yPtr) << "\n";
输出:
4 4 1 4
正如你所观察到的,无论类型如何,xPtr 和 yPtr 的大小都是 4他们指出。这是因为指针存储内存地址,其大小由体系结构决定。
但是,需要注意的是,函数指针的行为有所不同。它们通常比标准指针占用更多的空间,因为它们包含有关函数原型的附加信息。
以上是C 指针大小是固定的还是可变的,函数指针有何不同?的详细内容。更多信息请关注PHP中文网其他相关文章!