一道选择题 字符指针。。

来源:百度知道 编辑:UC知道 时间:2024/06/08 16:43:45
15.以下程序的输出结果是:( )

#include <iostream.h>

int fun(char *s){

char *p=s;

while (*p!='\0') p++;

return (p-s);

}

void main(){

cout<<fun("abc")<<endl;

}

A.0 B。1 C。2 D。3

为什么p可以减s?
s是什么?

char与int型是可以相-的,因为一个字本身是可以用一个数字表示的。(主要是英文字母与特殊字符,看看ASC II,http://www.garykessler.net/library/ascii.html
s是你传过去的"abc"中的“a”,p则为改为了a、b、c。因为p为指针,p++则指向下一个char符