我正在阅读本节,最后一段说明示例代码不是线程安全的.我的问题是:这不会有助于增加其随机性(即如果多个线程同时执行这些行)?
这是我无辜的计划
int main(int argc, char* argv[])
{
if(argc < 3)
{
printf("Sorry");
return 0;
}
char key[]= "45WPbZNljDN6CUCUU6ga";
FILE* inpFile = fopen(argv[1],"r");
FILE* outFile = fopen(argv[2],"w");
if(!inpFile || !outFile)
{
printf("oops");
return 0;
}
enc(inpFile,outFile,key);
fclose(inpFile);
fclose(outFile);
}
Run Code Online (Sandbox Code Playgroud)
enc()在别处定义,但它不是问题.当我尝试使用VS2010命令提示符编译时,一切都变得狂暴.但是,当我删除参数检查块时,它编译得很好.
int main(int argc, char* argv[])
{
char key[]= "45WPbZNljDN6CUCUU6ga";
FILE* inpFile = fopen(argv[1],"r");
FILE* outFile = fopen(argv[2],"w");
if(!inpFile || !outFile)
{
printf("oops");
return 0;
}
enc(inpFile,outFile,key);
fclose(inpFile);
fclose(outFile);
}
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?