在C中将字符串作为参数传递

Vij*_*jay 3 c c++ unix pointers

我有一个功能:

int getparam(char *gotstring)
Run Code Online (Sandbox Code Playgroud)

我正在传递一个字符串参数,就像 char *sendstring = "benjamin"

而不是我可以使用的上述声明,

int getparam(char gotstring[])
Run Code Online (Sandbox Code Playgroud)

问题:哪一个更好?如果我必须使用int getparam(char gotstring[])我必须对现有功能进行的所有其他更改?

Cha*_*via 6

int getparam(char gotstring[])并且int getparam(char* gotstring)完全相同.就个人而言,我会推荐后一种语法,因为它更好地描述了实际发生的事情.该getparam函数只有一个指向字符串的指针 ; 它不了解实际的数组大小.但是,这只是我的意见; 要么会奏效.