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

题目

有下列函数: 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所指字符串的长度。
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

有以下函数: 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指向了字符串结尾,故返回值为字符串的长度值。

第2题:

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

第3题:

有以下函数 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的值是字符串的长度,并不包括结束标志。

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

第6题:

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

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

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

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

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


正确答案:B
解析:循环语句while(*t++);执行完时,指针变量t就指向了字符中结束符‘\o’之后的位置,所以语句return(t-s);返回的就是字符串s所用内存的字节个数。

第7题:

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

A.比较两个字符的大小

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

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

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


正确答案:B

第8题:

有以下函数

int aaa(char *s)

{ char *t=s;

while(*t++);

t--;

return(t-s);

}

以下关于 aaa 函数的功能叙述正确的是

A) 求字符串s 的长度

B) 比较两个串的大小

C) 将串s 复制到串t

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


正确答案:A

第9题:

有以下函数

int fun(char *s)

{ char *t=s;

while(*t++);

return(t-s);

}

该函数的功能是

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

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

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

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


正确答案:B