A-A+
以下程序运行后的输出结果是【 】。 include <stdio.h> include <s
问题详情
以下程序运行后的输出结果是【 】。 include <stdio.h> include <string.h> char * ss(char * s) char * p,t; p=s+1:t= *s: whilet * p) { *(,p-1) = *p; p++;} * (p-1) =t; return s : } main () { char * p,str[10] =" abedefgh"; p = ss(str); printf("% s n". p): }
请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:bedefgha
函数9,的作用是将指针变量。指向的字符串的首字符移到最后一个位置,其他字符依次前移。其方法是:首先将指针变量p指向字符串s的第2个字符b,然后将首字符保存在字符变量t中;从字符串的第2个字符开始,通过语句*(P-1)=*p;依次前移,直到字符串结束符;最后通过语句*(P-1)=t;将保存在t中的字符放到移动后的字符串末尾,返回main函数并输出,输出结果为bedefsh。