C语言 char 字符数组 和 字符指针 作为 函数参数 的区别

2024-11-09 02:52:47
推荐回答(4个)
回答1:

在C语言中,数组作为参数,进行传递时,传递的是指针 ,换句话说,字符数组作为参数,进行传递时,传递的是字符数组的起始地址,相当于一个字符指针,两者没有区别。比如下面的代码:

#include 

void f1(char *s) { printf("%s\n", s);}
void f2(char sa[]) { printf("%s\n", sa);}

int main()

char rsa[] ="world hello";
f1(rsa);
f2(rsa);
return 0;
}

回答2:

从函数内来看基本是没有差别的,但从外边看,指针跟数组还是有些小区别,多看看书上解释,这类问题都讲得比较多

回答3:

没差,都是传入地址

回答4:

三个应该都是一样的