为您找到"

C语言int a=100, *p=&a为什么打印了来的是100呢

"相关结果约100,000,000个

C语言int a=100, *p=&a为什么打印了来的是100呢

int a=100, *p=&a;//p=&a,把a的地址赋给指针变量p,那就表示指针变量指向了变量a printf("%d",*p);输出*p,意思是输出p所指变量中的内容,也就是输出a变量的内容,即100

在C语言中, int *p; int a = 100; p = &a;//这句语句的意思是什么

int *p;声明了一个叫做p的指针,此时p不知道指向何方(未初始化)int a = 100;声明并初始化了一个整数a(=100)p = &a;让p指向a(将p设置为a的地址)(把a的地址写入p)(即初始化p为a的地址)p = a;把a复制到p所指向的内容(此时p一定不能是未初始化的,否则会有未定义行为出现)...

指针的赋值问题

int *p,*q; q=p; //对的,因为p,q都是指针,可以相互赋值 依据 A,C原则 int a,*p,*q; p=q=&a;//对的,p,q指针表示地址,根据B原则,&a也是地址,因此可以进行赋值 int a,*p,*q; q=&a; p=*q;//错的,q =&a 是对的,但是p =*q 是错的,根据原则A,C,*q是值,...

如何用c语言编写一个指针变量?

在C语言中,指针变量是一个存储其他变量地址的变量。以下是如何在C语言中声明和初始化一个指针变量的示例:在这个例子中,我们首先声明并初始化了一个整数变量 num。然后,我们声明了一个指针变量 ptr。接着,我们使用 & 运算符获取 num 的地址,并将这个地址赋值给 ptr。最后,我们使用 printf 函数打...

本人刚学c语言,不明白为什么 Int a[2]; int *p; p=a 和 p=(int *)&...

Int a[2];中a为数组的首地址,p=a是把首地址赋值给p,p保存的是数组的首地址;&a和a在一维数组中是同一个意思,都是取数组的首地址,但是在二维数组中就会有不同的意思,有取行地址和取首地址的区别,p=(int *)&a是将取出的地址强制转换为整型(没有必要转换,你本来定义的整型),其值...

C语言中*p=&a是什么意思

而且,p指向的地址中的内容就用*p表示。我来举个例子说明这三个符号到底表示什么。假设有一个楼盘的销售员,当然,现在时髦的叫法是“销售代表”之类的,我们用字母x表示他。他负责销售一个楼盘中的某套房子,此房子有一个地址为A,而他本身也需要有地方住,他居住的房子的地址为B。而这个幸运的销售...

C语言中数组指针关于p=a,p=&a等问题!!

C语言中数组指针关于p=a,p=&a等问题!!程序1: #include<stdio.h> int main() { int a[4]={1,3,5,7}; int (*p)[4]; p=&a; printf("%d\n",(*p)[3]); return 0; } 问题1:我想知道一维数组和二维数组的“数组名”含义是不是不同的?是不是一维时,... 展开 一...

来高手!求解! C语言中,指针 定义int a,*p=&a;中的*p=&a 和表达式中的...

1.*p=&a等价于int *p;p=&a; 也就是该指针是个2维指针,是指向了另一个指针的地址后再让那个指针指向a的地址 指针变量前面的 "* ".表示该变量的类型为指针变量. 2.p=&a把变量a的地址赋给p.

C语言中,int a=20, *p=&a; printf(“%d”,*p),则输出结果是???

这个输出的是a的值。因为p存放的是a在内存中的实际地址,*p是取内存地址中相应的值。

c语言中*p=a与*p=&a有什么区别?

int a=2,*p; *p=&a; 打印*P应该是一个地址值,很长一串, p=&a; 打*P印结果会是2;对于指针来说,*p = a[0],表示向地址为p的内存区域赋值为a[0]。p = a[0],把变量p的值改为a[0],这个语句正常应用中是错误的。变量p的值为内存地址,这样赋值会丢掉p原来指向的内存。
1 2 3 4 5 6 7 8 9

相关搜索