运算符&
- &:获取变量的地址,操作数必须是变量
int i;printf("%x",&i);
- 地址的大小是否与int相同取决与编译器。
int i;printf("%p",&i);
&不能取的地址:&不能对没有地址的东西取地址
- &a+b;
&(a++);
&(++a);
#include<stdio.h>
int main(void)
{
int i = 0;
/*
*int p = (int)&i; //把i的地址强制转换为整数类型
*printf("0x%x\n", p); // 再以16进制输出
*/
printf("0x%x\n", &i); //以16进制输出i的地址
printf("%p\n", &i);
return 0;
}
数组的地址
#include<stdio.h>
int main(void)
{
int a[10];
printf("%p\n", &a);
printf("%p\n", a);
printf("%p\n", &a[0]);
printf("%p\n", &a[1]);
return 0;
}
/*
*00000084A88FF938
*00000084A88FF938
*00000084A88FF938
*00000084A88FF93C
*/
更多推荐
C语言入门——取地址运算
发布评论