- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
为了从文本文件中读取输入,我写了下面的代码:
int main(){
int x;
#ifndef ONLINE_JUDGE
freopen("input.txt", "r", stdin);
#endif
scanf("%d", &x);
printf("%d\n", x);
system("pause");
return 0;
}
效果还不错。
但是,在 visual studio 中,编译器由于 freopen 而给我一个错误,并建议我改用 freopen_s。我试图了解函数 freopen_s 的工作原理,但我做不到。我的代码:
int main(){
int x;
#ifndef ONLINE_JUDGE
FILE *stream;
freopen_s(&stream, "input.txt", "r", stdin);
#endif
scanf("%d", &x);
printf("%d\n", x);
system("pause");
return 0;
}
它不输出任何东西,甚至“暂停”也不起作用。 cmd 在程序完成后立即消失,没有打印任何内容。我不知道为什么在 freopen_s 中使用“stream”。感谢您回答我的问题。
最佳答案
我会给你另一种方法。如果你仍然想使用 freopen,你可以使用“-D _CRT_SECURE_NO_WARNINGS”这个选项与终端命令一起,错误信息会被抑制。
在 VS 中,您可以在以下链接下添加它 -
项目->“项目”属性-> C/C++ -> 命令行-> 附加选项(右下角的文本框)。
这应该可以解决问题!
关于c++ - 如何使用函数 freopen_s,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22047828/
为了从文本文件中读取输入,我写了下面的代码: int main(){ int x; #ifndef ONLINE_JUDGE freopen("input.txt", "r", std
errno_t freopen_s ( FILE** pFile, const char *path, const char *mode, FILE *stream ); 这里,freopen_s 将
Visual C++ 报告传递给 fclose 的参数无效,该参数是 freopen_s 返回的 FILE*: #include #include int APIENTRY wWinMain(HI
要临时将 stdout 重定向到一个文件,我正在做: printf("Before"); freopen_s(&stream, "test.txt", "w", stdout); printf("Du
我是一名优秀的程序员,十分优秀!