有下列函数: int fun(char*s) {char*t=s; while(*t++); return(t-s); } 该函数的功能是( )。A.比较两个字符串的大小B.计算s所指字符串占用内存字节的个数C.计算s所指字符串的长度D.将s所指字符串复制到字符串t中

题目

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

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

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

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

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


相似考题
更多“有下列函数:int fun(char*s){char*t=s;while(*t++);return(t-s);}该函数的功能是()。A.比较两个字 ”相关问题
  • 第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题:

    有以下函数 int aaa(char *s) {char *t=S; while(*t++); t--; return(t-s); } 以下关于aaa函数的功能的叙述正确的是

    A.求字符串s的长度

    B.比较两个串的大小

    C.将串s复制到串t

    D.求字符串s所占字节数


    正确答案:A
    解析: 循环开始前,指针t和s都指向字符串的起始位置,然后通过while循环判断t指向的位置是否为空,同时让t向右移动一位。while循环结束时,t自减1,此时t指向的位置是字符串的结束标志,'\0',处,故t-s的值是字符串的长度,并不包括结束标志。

  • 第3题:

    有以下函数: mt aaa(char*s) {char *t=s; while(*t++); t--; return(t-s); } 以下关于aaa函数的功能的叙述正确的是( )。

    A.求字符串s的长度

    B.比较两个串的大小

    C.将串s复制到串t

    D.求字符串s所占字节数


    正确答案:A
    解析:aaa()函数中,首先定义了一个字符指针t指向形参s,然后通过一个while循环让指针t不断递增,直到t指向字符串结束标志处。当t指向结束标志处时,由于后缀4-+运算符的原因,它还会被再递增1,所以接下来的t--;语句让它回到结束标志处。最后返回t-s,因此s还是指向字符串第1个字符处,而t指向了字符串结尾,故返回值为字符串的长度值。

  • 第4题:

    有以下函数 int aaa(char *s) { char *t=s; while(*t++); t--; return(t-s); } 以下关于aaa函数的功能的叙述正确的是

    A.求字符串s的长度

    B.比较两个串的大小

    C.将串s复制到串t

    D.求字符串s所占字节数


    正确答案:A
    解析:aaa()函数中,首先定义了一个字符指针t指向形参s,然后通过一个while循环让指针 t不断递增,直到t指向字符串结束标志处。当t指向结束标志处时,由于后缀++运算符的原因,它还会被再递增1,所以接卜来的t--;语句让它回到结束标志处。最后返回t-s,因此s还是指向字符串第1个字符处,而t指向了字符串结尾,故返回值为字符串的长度值。

  • 第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始终指向首地址,将末地址减去首地址可以计算出字符串的长度。