【发布时间】:2019-03-08 13:06:47
【问题描述】:
我知道这是一个初学者的问题,但我不明白它是如何工作的,在我发现的每个来源上,我看到了不同的方法来做同样的事情,我不明白这些构建函数的方法之间的区别在 c 中返回一个字符串。
什么时候发生:
我在返回类型后面写星号?
char* my_function(){...}
如果在函数名前加星号呢?
char *my_function(){...}
两者之间的星号是什么?
char * my_function(){...}
2 星号是什么意思?
char **my_function(){...}
是的,下一个代码编译:
char* * **my_function(){...}
或者……它们都是一样的吗?
【问题讨论】:
-
空间在 C 中(大部分)是不相关的。
char*foo;、char *foo;、char* foo;和char * foo;都意味着 100% 绝对相同。有些人偏爱一种或另一种,也许您的编码位置有使用指南;简而言之:除非有理由使用另一种风格,否则请使用您最喜欢的风格。