use*_*685 5 c printf winmain visual-studio-2017
我应该先说一下,我对 VS 比较陌生,但对 C 来说并不陌生。
我遇到的问题是打印时标准输出上没有显示任何内容。printf/_s 和 fprintf/_s(stdout, ...) 都不会产生任何输出。有趣的是, fprinf(file, ...) 实际上确实会生成给定文件的输出。这是否有可能与 printf 弃用有关(我已经尝试过 preproc._CRT_SECURE_NO_DEPRECATE)?
下面是我的完整程序:
#include <winsock2.h>
#include <ws2tcpip.h>
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
FILE * pFile = fopen("outputTest.txt", "w");
fprintf(pFile, "At top of main1.\n"); //works
printf("At top of main2.\n"); //doesn't work
printf_s("At top of main3.\n"); //doesn't work
fprintf_s(stdout, "At top of main4.\n"); //doesn't work
fflush(stdout);
fclose(pFile);
return FALSE;
}
Run Code Online (Sandbox Code Playgroud)
我使用的是 Visual Studio 2017,该程序是 Win32(应用程序?)。我还排除了链接器->系统->子系统是问题的可能性。
任何想法表示赞赏。
编辑:我不确定这是否重要,但 VS 顶部的“解决方案平台”下拉菜单显示 Win32,这与创建新的“Windows 桌面应用程序”时不同。其中写着 x86。
| 归档时间: |
|
| 查看次数: |
904 次 |
| 最近记录: |