我有一份家庭作业。我应该制作一个计算器并添加背景音乐。我在Windows上使用Dev-C ++和C.
当我想使用音乐和计算器时,我需要一个线程。我将使用process.h
作为线程。我尝试使用_beginthread
,但它引发了错误。
#include<stdio.h>
#include<process.h>
void asd()
{
printf("hello");
}
int main()
{
_beginthread(asd(),333,(void*)NULL); _endthread();
}
,错误是
[invalid use of void expression]
我该怎么做这个任务?
答案 0 :(得分:2)
您正在调用asd
而不是传递其地址。由于函数返回void
,因此错误地将void
传递给期望函数指针的位置。删除括号。
int main()
{
_beginthread(asd, 333, (void*)NULL);
}
函数asd
也必须接受void指针参数。
void asd(void*)
{
printf("hello");
}