我不熟悉K&R风格的功能声明.
编译之后,带有警告(仅与main的返回值相关-Wall)但是使用的变量的数据类型是什么?
main(a, b, c, d){
printf("%d", d);
}
foo(a, b){
a = 2;
b = 'z';
}
Run Code Online (Sandbox Code Playgroud)
如果这是一个问题,请在评论部分提供链接.我找不到类似的东西.
编辑
我刚刚遇到了一个混淆的C代码,它使用了这些代码.
但我可以向你保证,我不会在C编程中使用这样的语法.
我已经明白这char **envp是第三个参数main,并且在下面的代码的帮助下,我能够看到它实际包含的内容.
int main(int argc, char *argv[], char *env[])
{
int i;
for (i=0 ; env[i] ; i++)
std::cout << env[i] << std::endl;
std::cout << std::endl;
}
Run Code Online (Sandbox Code Playgroud)
我的问题是:为什么(在什么情况下)程序员需要使用它?我发现了很多解释什么这个说法呢,但没有什么能告诉我在那里,这是通常使用的.试图了解这可能会使用哪种现实世界的情况.