我想问大家一下
如:
char *p;
char s[5]="skl"
让指针p指向数组s的方法
我发现这两种写法结果一样,是否这两种写法都可以呢?
p=s;
或者
在定义时char *p=s;
请高手解释一下,我有点想不明白
这两种写法都可以的!
char *p;
char s[5]="skl" ;
p=s; 首先是声请一个指向char类型的指针变量p,然后将指针p指向数组s的首地址。
char s[5]="skl" ;
char *p=s; 这个意思是 定义一个char指针p然后给他初值,值为s数组的首地址。
char *p;
char s[5]="skl" ;
p=s; 首先是声请一个指向char类型的指针变量p,然后将指针p指向数组s的首地址。
char s[5]="skl" ;
char *p=s; 这个意思是 定义一个char指针p然后给他初值,值为s数组的首地址。
温馨提示:答案为网友推荐,仅供参考
第1个回答 2013-12-03
数组前面的S本身就是 一个指针。所以 p=s 其实是一个赋值的操作。
所以定义的方法是一样的!
所以定义的方法是一样的!
第2个回答 2013-12-03
当然是一样的,有什么要解释的?