| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1039 人关注过本帖
标题:请问这几句赋值有什么区别吗??很短!
取消只看楼主 加入收藏
mashrb
Rank: 2
等 级:论坛游民
帖 子:47
专家分:29
注 册:2010-6-30
结帖率:76.92%
收藏
已结贴  问题点数:10 回复次数:1 
请问这几句赋值有什么区别吗??很短!
#include "stdio.h"

int num(char *s,char *y);
int num(char *s,char *y){
/***************************/   
   *s='a';
   s[1]='a';
   *(s+2)='a';
   y="a";          /*********这4句的赋值在方法上有什么本质的区别吗??***********/
/**************************/  
}

main(){
   
   char s[12]="Lovechina";
   char *y=s;
   num(s,y);
   printf("s=%s\ny=%s\n",s,y);
   getch();
}






希望有高手解释一下。不胜感激!
搜索更多相关主题的帖子: 赋值 
2010-07-07 20:43
mashrb
Rank: 2
等 级:论坛游民
帖 子:47
专家分:29
注 册:2010-6-30
收藏
得分:0 
谢谢解答。

s[1]='a'    ------   *(s+1)='a'  

s[1]='a'    不是只相当于对变量的简单赋值吗??
*(s+1)='a'  这句却是通过对地址的取值,然后再赋值。 这两句怎么能说是一样的呢??
2010-07-08 12:45
快速回复:请问这几句赋值有什么区别吗??很短!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012058 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved