我是新手..不好意思
下面是输出一个1,请问,我想不用全局变量定义i,请问如何做...谢谢#include <Windows.h>
#include <iostream>
#include <process.h>unsigned __stdcall RunWow(void * pParam);int i = 100;void main(){
HANDLE h1;
h1 = (HANDLE)_beginthreadex(NULL,0,RunWow,0,0,NULL);
CloseHandle(h1);
Sleep(500);
printf("%d",i);
}unsigned __stdcall RunWow(void * pParam){
i = 1;
return 0;
}
下面是输出一个1,请问,我想不用全局变量定义i,请问如何做...谢谢#include <Windows.h>
#include <iostream>
#include <process.h>unsigned __stdcall RunWow(void * pParam);int i = 100;void main(){
HANDLE h1;
h1 = (HANDLE)_beginthreadex(NULL,0,RunWow,0,0,NULL);
CloseHandle(h1);
Sleep(500);
printf("%d",i);
}unsigned __stdcall RunWow(void * pParam){
i = 1;
return 0;
}
#include <Windows.h>
#include <iostream>
#include <process.h>unsigned __stdcall RunWow(void * pParam);void main(){
HANDLE h1;
int i = 100;
h1 = (HANDLE)_beginthreadex(NULL,0,RunWow,&i,0,NULL);
CloseHandle(h1);
Sleep(500);
printf("%d",i);
}unsigned __stdcall RunWow(void * pParam){
*(int*)pParam = 1;
return 0;
}
#include <iostream>
#include <process.h>unsigned __stdcall RunWow(void * pParam);// int i = 100; 去掉;void main(){
HANDLE h1;
int i=0; //局部变量;
//h1 = (HANDLE)_beginthreadex(NULL,0,RunWow,0,0,NULL); 改为:
h1 = (HANDLE)_beginthreadex(NULL,0,RunWow,&i,0,NULL);
CloseHandle(h1);
//Sleep(500); 改为:
WaitForSingleObject(h1,INFINITE);
printf("%d",i);
}unsigned __stdcall RunWow(void * pParam){
//i = 1;
*(int *)pParam=1;
return 0;
}