fulpath1=&NewAddfulpath1[0]; 和 fulpath1=&NewAddfulpath1; 应是一样吧?

huabinsir 2014-01-14 04:56:41
char *fulpath1=NULL;
char NewAddfulpath1[128]={0};
fulpath1=&NewAddfulpath1[0];


请问 fulpath1=&NewAddfulpath1[0]; 和 fulpath1=&NewAddfulpath1; 应是一样吧?
...全文
97 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2014-01-15
  • 打赏
  • 举报
回复
为什么不fulpath1=(char *)NewAddfulpath1; 呢?
huabinsir 2014-01-15
  • 打赏
  • 举报
回复
请问 fulpath1=&NewAddfulpath1[0]; 和 fulpath1=&NewAddfulpath1; fulpath1 值是一样的吧? (这样写, 不会有什么问题吧)
max_min_ 2014-01-14
  • 打赏
  • 举报
回复
引用 2 楼 huabinsir 的回复:
[quote=引用 1 楼 derekrose 的回复:] 值是一样的,但是不能这样去认为
请问, 为什么?[/quote] 一个是取数组指向的首地址,一个是取数组本身的地址!当是指针的时候两个值就是不同的了!
derekrose 2014-01-14
  • 打赏
  • 举报
回复
引用 2 楼 huabinsir 的回复:
[quote=引用 1 楼 derekrose 的回复:] 值是一样的,但是不能这样去认为
请问, 为什么?[/quote] 反证法,如果是相同的 即&NewAddfulpath1[0]==&NewAddfulpath1 由于[]优先级较高 那么可以推出 &(NewAddfulpath1[0])==&(NewAddfulpath1) 即(NewAddfulpath1[0])==(NewAddfulpath1) 显然错误,反证不成立,原命题为假。 语义上来讲,第一个表达式对数组第一个元素求地址,第二个表达式对数组名求地址 含义不同
huabinsir 2014-01-14
  • 打赏
  • 举报
回复
引用 1 楼 derekrose 的回复:
值是一样的,但是不能这样去认为
请问, 为什么?
derekrose 2014-01-14
  • 打赏
  • 举报
回复
值是一样的,但是不能这样去认为

70,020

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧