我见过不返回任何东西的函数,它们被声明为:
void foo()
我也见过没有任何参数的函数:
int foo(void)
同时申报两者是否合法且良好?如:
void foo(void)
最佳答案
如评论中所述,良好做法取决于上下文。以下面的函数不带任何参数也不返回任何内容为例:
void drawSpecialSeparator(void) {
int i = 0;
for (; i < 10; i++) {
printf("%s", (i % 2) ? "--" : "++");
}
printf("\n");
}
可以是一个简单的好例子,可以模块化你的代码。此外,它还提高了您的代码可读性,您以后可以轻松地重用它。
因此,在正确的上下文中使用此类函数是一种很好的做法。
旁注:我个人从不使用这些类型的函数来更改全局变量。也许这只是我的个人品味,但我相信使用这些函数更改全局变量会极大地增加代码歧义。
关于c - 声明一个不返回任何内容且没有任何参数的函数是否合法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59239081/