Zeng-fh 2022-06-27 19:48 采纳率: 89.8%
浏览 51
已结题

几个关于指针的疑问,还涉及结构体、数组


已知:int i,j=7,*p=&i;,则与i=j;等价的语句是
*p=j;

设有定义:struct {char name[12]; int a; double b;}t1,t2;,
且变量均已正确赋值,则以下语句中错误的是(  )
t2.name=t1.name;

下面程序的输出结果是( e )
#include<stdio.h>    
void main()
{    
char s[]="cent";
printf("%c\n",*s+2);
}  

img

  • 写回答

3条回答 默认 最新

  • 天际的海浪 2022-06-27 20:45
    关注
    第一题
    &i是获取i变量的地址,p=&i是p指针指向i的地址,*p=j是对p指针指向的地址进行赋值, 因为p指向i的地址,所以i也被赋值了。
    第二题
    结构体t1和t2变量可以相互赋值的,但是结构体中的name是字符数组,也就等同字符指针,
    对字符数组赋值是要改变数组的地址,但数组的地址不能改变, 所以t2.name=t1.name是错误的
    对t2.name内容赋值应该用   strcpy(t2.name,t1.name); 
    第三题
    s[]是字符数组,也就等同字符指针,s是数组的首元素的地址, *s就是获取数组首元素的值'c',等同s[0],加2运算是对c的ASCII码值加2,结果就是'e'
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 7月5日
  • 已采纳回答 6月27日
  • 赞助了问题酬金10元 6月27日
  • 修改了问题 6月27日
  • 展开全部

悬赏问题

  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改