在线编译器 C

#include <stdio.h> int main() { int a = 10; // double b = 20; // char c = 'a'; int* p = &a; printf("%d\n", sizeof(p)); return 0; }
这段代码定义了一个整型变量a,然后让指针p指向a,最后打印指针p所占的字节数。在大多数64位系统上,指针大小通常是8字节,所以输出可能是8。

- 注意sizeof(p)计算的是指针变量本身的大小,而不是它指向的变量a的大小。如果你想获取a的大小,应该使用sizeof(a)或sizeof(*p)。
- 代码中注释掉的部分(double b和char c)没有被使用,它们不影响程序运行,但你可以思考如果取消注释,指针p能否指向不同类型的变量。