我写了一个映射到共享内存位置的代码,这样第一个程序打开一个共享内存块并在其中存储一些数据。第二个程序读取共享数据。
这两个命令行有什么区别:
1.
if(argc<2)
{
printf("USAGE:%s text-to-share\n",argv[0]);
}
如果我在没有第二个参数的情况下运行这段代码,它会给我一个段错误。 但是,当我输入一些数据时它工作正常。
2.
if(argc<2)
return printf("USAGE:%s text-to-share\n",argv[0]);
这个符合我的目的。
但我不明白两者之间的区别。 我是新手。对我来说两者是一样的,因为理想情况下它们应该有相同的输出。 请帮忙!
最佳答案
两者显然不相同:
printf("USAGE:%s text-to-share\n",argv[0]); // From example 1
return printf("USAGE:%s text-to-share\n",argv[0]); // From example 2
第二行有一些第一行没有的东西:return 语句。
关于c - 这两个命令行有什么区别? (段错误),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3682330/