下面函数的功能是( )。 sss(s,t) char *s,*t; { while(*s); while(*t) *(s++)=*(t++); return s; }

D)将字符串t续接到字符串s中.求详解!!谢谢!!!...
2026年09月24日 11:18
有4个网友回答
网友(1):

下面函数的功能是( )。
sss(s,t)
char *s,*t;
{ while(*s);
while(*t)
*(s++)=*(t++);
return s;

网友(2):

你看的书是老掉牙的吧?这种函数格式早已被淘汰了。现在的写法是这样的:

char *sss(char *s,char *t) {

    while(*s);

    while(*t)

        *(s++)=*(t++);

    return s;

}

其功能是:如果s指向的字符串不为空,则由while(*s);构成一个死循环,永远跳不出;若s指向的字符串为空,则将t指向的字符串除结束'\0'外依次拷入s指向的空间;最后返回返回s。此函数有明显的错误:

  1. 有条件死循环,如前述;

  2. 没有将结束符'\0'拷入,使最后的s指向的字符串无法操作。

删除while(*s);,将

while(*t)

        *(s++)=*(t++);

改为

while( *s++=*t++);

就可避免上述错误。这样改后就是将字符串t拷贝到字符串s。

网友(3):

直接连接呀,,,,,,

网友(4):

你能不能好好的把题目写一遍