sizeof
是一个运算符,给出某个类型或变量在内存中占据的字节数。
sizeof(int)
sizeof(i)
#include<stdio.h>
int main()
{
int a;
a=6;
printf("sizeof(int)=%ld\n",sizeof(int));
printf("sizeof(a)=%ld\n",sizeof(a));
return 0;
}
4 4
scanf("%d",&i);
运算符&
获得变量的地址,它的操作数必须是变量。
地址的大小是否与int相同取决于编译器。
printf("%p",&i);
&只能取明确变量的地址
&(i++)
&(a+b)都是不对的
试试这些&
变量的地址
相邻变量的地址
- 为什么这样写就是相邻的两个变量,i,p一定相邻吗?还有视频中提到的堆栈
printf("%p",&a);
printf("%p",a);
printf("%p",&a[0]);
- 这三行代码的结果是相同的,why?