Вероятно, ваша программа завершает работу, прежде чем поток, созданный вами в main, сможет завершиться.Следовательно, у потока никогда не было возможности завершить и распечатать результат.
Перед вызовом CloseHandle
добавьте вызов WaitForSingleObject
.Это заставит код в main ждать завершения потока.
printf("I wait\n");
WaitForSingleObject(THread_handle, INFINITE);
printf("I close\n");
CloseHandle(THread_handle);
return 0;
}
Кроме того, убедитесь, что вы также сбрасываете вывод в свой поток.printf
нужен символ конца строки.
Вместо этого в ThreadFunc
:
printf("%d",c);
Измените его на:
printf("%d\n",c);