C语言题目 A求字符串的长度 B比较两个字符串的大小 C将字符串str1复制到str2中 D将str1接续到str2
下面函数调用功能是(char*funcharstr1,char*str2){while((*str1)&&(*str2++=*str1++));returnstr2;}答...
下面函数调用功能是 (char *fun char str1,char *str2){while ((*str1)&&(*str2++=*str1++));return str2;} 答案是什么呢?求解释,指针程序看不懂
展开
6个回答
展开全部
char *fun(char *str1,char *str2){
while ((*str1) && (*str2++ = *str1++));
return str2;
}
while循环条件有两个,一个是(*str1),含义是,当指针str1指向的内容不是'\0'时,该条件为真;
第二个条件是(*str2++ = *str1++),含义是,将str1指向的内容复制到str2指向的地址单元中,然后将str2指向的内容作为条件(除了'\0'外都是真),两个条件都为真时,则继续,否则,结束循环。要说明的是,悉亩谈(*str2++ = *str1++))在复制完后,两个指针都自增1,以便指向下睁碰一个地址。其实,这个循环可以这样写:
while(*str2++ = *str1++);
再加一句:
*str2 = '\0'
原函数中缺少*str2 = '\0',是不完整的。
从以上分析可知,该函数的耐侍功能是字符串复制,与系统函数strcpy()功能相似。
while ((*str1) && (*str2++ = *str1++));
return str2;
}
while循环条件有两个,一个是(*str1),含义是,当指针str1指向的内容不是'\0'时,该条件为真;
第二个条件是(*str2++ = *str1++),含义是,将str1指向的内容复制到str2指向的地址单元中,然后将str2指向的内容作为条件(除了'\0'外都是真),两个条件都为真时,则继续,否则,结束循环。要说明的是,悉亩谈(*str2++ = *str1++))在复制完后,两个指针都自增1,以便指向下睁碰一个地址。其实,这个循环可以这样写:
while(*str2++ = *str1++);
再加一句:
*str2 = '\0'
原函数中缺少*str2 = '\0',是不完整的。
从以上分析可知,该函数的耐侍功能是字符串复制,与系统函数strcpy()功能相似。
展开全部
(char *fun char str1,char *str2){世慎while ((*str1)&&(*str2++=*str1++));return str2;}搜搏敬
把str1复银念制到str2里面,然后返回str2
把str1复银念制到str2里面,然后返回str2
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
复制 和这个类似strcpy:
char *strcpy(char *strDestination, const char *strSource)
碧消租 {
悔兆 assert(strDestination && strSource);
char *strD=strDestination;
while ((*strDestination++=*strSource++)!='\0')
NULL;
return strD;
桥缓 }
char *strcpy(char *strDestination, const char *strSource)
碧消租 {
悔兆 assert(strDestination && strSource);
char *strD=strDestination;
while ((*strDestination++=*strSource++)!='\0')
NULL;
return strD;
桥缓 }
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-02-05
展开全部
C 将字符串str1复制到余正str2中
while ((*str1)&&(*str2++=*str1++)); 中*str1 表腊毁稿示判断str1 是否轮孝为空 。*str2++=*str1++ 表示将str中值赋值给str2
不明白追问吧
while ((*str1)&&(*str2++=*str1++)); 中*str1 表腊毁稿示判断str1 是否轮孝为空 。*str2++=*str1++ 表示将str中值赋值给str2
不明白追问吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
C 赋值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询