以下不能将s所指字符串正确复制到t所指存储空间的是( )。A.do{*t++=*8++;}while(*s);B.for(i=0;t[i]=s[i];i++);C.while(*t=*s){t++;s++;}D.for(i=0,j=0;t[i++]=s[j++];);

题目

以下不能将s所指字符串正确复制到t所指存储空间的是( )。

A.do{*t++=*8++;}while(*s);

B.for(i=0;t[i]=s[i];i++);

C.while(*t=*s){t++;s++;}

D.for(i=0,j=0;t[i++]=s[j++];);


相似考题
参考答案和解析
正确答案:A
do{*t++=}S++;}while(*S);不能因为当*s=’、0。时,while(*s)跳出循环,这样字符串结束标志’、0’没有复制给}t,造成}t不完整。注意,*t++=*s++是先执行t=*s,然后才进行t=t+1,s=s+1。B、C、D都能将。\0’复制过去
更多“以下不能将s所指字符串正确复制到t所指存储空间的是( )。A.do{*t++=*8++;}while(*s);B.for(i=0; ”相关问题
  • 第1题:

    有下列函数:

    int fun(char*S)

    {char*t=s;

    while(*t+ +);

    return(t-s);

    }

    该函数的功能是( )。

    A.比较两个字符串的大小

    B.计算s所指字符串占用内存字节的个数

    C.计算s所指字符串的长度

    D.将s所指字符串复制到字符串t中


    正确答案:C
    解析:在函数fun(char*s)中,首先用字符指针变量t指向s,而循环语句while(*t++);的功能是使指针变量 t指向字符串变量s的末尾,这时退出循环,因而语句 return(t-s);返回的就是字符串s所指字符串的长度。

  • 第2题:

    以下不能将S所指字符串正确复制到t所指存储空间的是( )。

    A.while(*t=*s){t++;s++;)

    B.for(i=0;t[i]=s[i];i++);

    C.do{*t++=*s++;)while(*s);

    D.for(i=0,j=o;t[i++]=s[j++];);


    正确答案:C
    C项复制时没有复制结束串“\0”。

  • 第3题:

    以下不能将s所指字符串正确复制到t所指存储空间的是( )。

    A.while(*t=*s){t++;s++;}

    B.for(i=0;t[i]=s[i];i++);

    C.do{*t++:*s++;}while(*s);

    D.for(i=0,j=0;t[i++]=s[j++];);


    正确答案:C
    解析:C项复制时没有复制结束串“\0”。

  • 第4题:

    有下列函数: int fun(char*s) { char*t=s; while(*t++); reurn(t-s); } 该函数的功能是( )。

    A.比较两个字符串的大小

    B.计算s所指字符串占用内存字节的个数

    C.计算s所指字符串的长度

    D.将s所指字符串复制到字符串t中


    正确答案:C
    解析:在函数fun(char*s)中,首先用字符指针变量t指向s,而循环语句while(*t++);的功能是使指针变量t指向字符串变量s的末尾,这时退出循环,因而语句return(t-s);回的就是字符串s所指字符串的长度。

  • 第5题:

    有以下函数: int fun(char * s) {char * t=s; while(*t++); return(t-s) 该函数的功能是______。

    A.比较两个字符串的大小

    B.计算s所指字符串占用内存字节个数

    C.计算s所指字符串的长度

    D.将s所指字符串复制到字符串t中


    正确答案:C
    解析: 定义一个字符指针t,并将字符指针s的首地址赋给字符指针t;通过while语句将指针t往下移到字符串最后一个字符后面的地址,指针s始终指向首地址,将末地址减去首地址可以计算出字符串的长度。