yprt是指针,yprt是计算机存储某个数据的地址,加上表示指向这个地址存储的数据
若地址yprt里存储的是y,&是单目运算符,符合右结合法则,所以先是运算yprt,它的值是y,
然后再&y,它的运算结果是得出存储y的地址,就是yprt。
不懂继续问
望采纳
首先更正一下楼主错误,int 型的指针不可以用来获取char型的地址的,这样会产生错误,如果你的编译系统没有报错,实际上也有错误。
第二,字符串实际上就是等于字符数组。
ptr = &str[2];
printf("%d",ptr);
reptr = (ptr);
printf("%c",reptr);
printf("\n");
这个可以输出的。就是C
ptr = &str[2];
printf("%c",(ptr+1));
输出的是第4个字符‘/0’就是“空”,可能楼主由此判断无法输出
ptr = &str[1];
printf("%c",(ptr+1));
就能输出C了
int 应该不可以,不过 int的话就可以
char str[4] = "abc";
int ptr;
char reptr;
ptr =(int)&str[0];
printf("%d",(char )ptr);
reptr = ((char )ptr);
printf("%c",reptr);
printf("\n");
实际上利用强制类型转换,用int来存数据,意义上char 和int都是整形,所以可以一定程度上转换
以上就是关于C语言指针,&*怎么得到地址的全部的内容,包括:C语言指针,&*怎么得到地址的、c语言 指针 取值、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)