一个关于线程的问题~~~

这是代码~#include<windows.h>#include<stdio.h>DWORDWINAPIMyThread(LPVOIDlpParam){inti=1;wh... 这是代码~
#include<windows.h>
#include<stdio.h>
DWORD WINAPI MyThread(LPVOID lpParam)
{
int i=1;
while(i<=20) printf("这是一个线程,用来显示一串数字,现在是%d\n",i++);
return 0;
}

int main(int argc,char * argv[])
{
HANDLE hMyThread;
DWORD dwMyThreadID;
hMyThread=::CreateThread(NULL,NULL,MyThread,NULL,0,&dwMyThreadID);
printf("我已经创建了一个线程,此线程的ID为:%d\n",dwMyThreadID++);
::WaitForSingleObject(hMyThread,INFINITE);
::CloseHandle(hMyThread);
return 0;

}
请问为什么有时会出现
展开
 我来答
archi09
2010-01-27 · TA获得超过102个赞
知道答主
回答量:18
采纳率:0%
帮助的人:20.2万
展开全部
使用printf的缓冲区问题,在每个printf后加强制清空 fflush(stdout); 就没有了
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式