C语言指针与地址基础学习(取地址运算)
取地址运算:&运算符取得变量的地址
代码示例一
#include<stdio.h>
int main() {
int a;
a = 6;
printf("sizeof(int)=%d\n", sizeof(int));
printf("sizeof(a)=%d\n", sizeof(a));
return 0;
}
以上代码说明 i n t int int型的一个字符占 4 4 4个字节,一个字节占 8 8 8位的比特,所以 4 4 4个字节占 32 32 32位的比特,所以是 32 32 32位的变量。
#include<stdio.h>
int main() {
int a;
a = 6;
printf("sizeof(double)=%ld\n", sizeof(double));
printf("sizeof(a)=%ld\n", sizeof(a));
return 0;
}
运算符&
∙ \bullet ∙scanf(“%d”,&i);里的&
∙ \bullet ∙获得变量的地址,它的操作数必须是变量
∙ \bullet ∙int i; printf(“%x”,&i);
∙ \bullet ∙地址的大小是否与int相同取决于编译器
∙ \bullet ∙C语言的变量是放在内存里头的
∙ \bullet ∙如果运算符&的右边不是变量就不能取地址
∙ \bullet ∙指针变量可以通过求地址运算符(&)来获得地址值,可以通过指针变量获得地址值,还可以通过标准函数获得地址值