新聞中心
C語(yǔ)言怎么同時(shí)運(yùn)行3個(gè)子函數(shù)
單線程只能運(yùn)行一下,當(dāng)從函數(shù)返回后再繼續(xù)運(yùn)行下邊的代碼 想同時(shí),可以用多線程 C語(yǔ)言本身是不支持多線程的,除非是C++或者VC++或以上的語(yǔ)言。 但是如果你的編程水平可以,可以自己寫一個(gè)運(yùn)行環(huán)境模擬多線程。 提問(wèn)人的追問(wèn) 2010-07-29 21:34 呃,就是這個(gè)不會(huì)呀 ==! 團(tuán)隊(duì)的補(bǔ)充 2010-07-29 21:36 呵呵,這個(gè)涉及到匯編和CPU工作分配、資源分配問(wèn)題。我不是計(jì)算機(jī)專業(yè)的,也不是很明白。可以去找寫系統(tǒng)軟件的,他們都了解。
公司主營(yíng)業(yè)務(wù):網(wǎng)站設(shè)計(jì)、成都網(wǎng)站設(shè)計(jì)、移動(dòng)網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。創(chuàng)新互聯(lián)建站是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來(lái)驚喜。創(chuàng)新互聯(lián)建站推出北海街道免費(fèi)做網(wǎng)站回饋大家。
#include DWORD WINAPI ThreadProc(LPVOID lpParameter)//線程函數(shù){printf("Hello World\n");return 0;}int main(){HANDLE hAnd[3] = {NULL};int i;for (i=0;i
在C語(yǔ)言中有兩個(gè)函數(shù),有什么方法能使兩個(gè)函數(shù)同時(shí)運(yùn)行!
在Win32程序中,可以使用多線程來(lái)實(shí)現(xiàn),但是那個(gè)比較復(fù)雜,不太容易在短時(shí)間內(nèi)掌握。
如何用c語(yǔ)言實(shí)現(xiàn)多個(gè)函數(shù)執(zhí)行
#includestdio.h
void?fun1(){}
void?fun2(){}
void?fun3(){}
void?fun4(){}
void?fun5(){}
void?fun6(){}
void?fun7(){}
void?fun8(){}
void?call(char?choice)
{
switch(choice)
{
case?'1':
fun1();
break;
case?'2':
fun2();
break;??
case?'3':
fun3();
break;
case?'4':
fun4();
break;
case?'5':
fun5();
break;
case?'6':
fun6();
break;
case?'7':
fun7();
break;
case?'8':
fun8();
break;??
defult:
break;?????
}
}
int?main(void)
{
char?choice[8]={0};
char?ch;
int?i=0;
printf("請(qǐng)輸入你選擇要運(yùn)行的函數(shù)編號(hào)(1~8):");
ch=getchar();
while(ch!='\n')
{
if(ch='1'ch='8')
{
choice[i]=ch;
i++;
}
}
for(int?j=0;ji;j++)
{
call(choice[j]);
}
return?0;
}
c++如何同時(shí)執(zhí)行2個(gè)函數(shù)
#include?iostream//?必須的頭文件#include?pthread.h
using?namespace?std;?
#define?NUM_THREADS?2?
//?線程的運(yùn)行函數(shù)
void*?say_hello(void*?args){
cout??"Hello?Runoob!"??endl;????return?0;
}?
int?main(){
//?定義線程的?id?變量,多個(gè)變量使用數(shù)組
pthread_t?tids[NUM_THREADS];????
for(int?i?=?0;?i??NUM_THREADS;?++i)
{
//參數(shù)依次是:創(chuàng)建的線程id,線程參數(shù),調(diào)用的函數(shù),傳入的函數(shù)參數(shù)
int?ret?=?pthread_create(tids[i],?NULL,?say_hello,?NULL);????????
if?(ret?!=?0)
{
cout??"pthread_create?error:?error_code="??ret??endl;????????
}
}
//等各個(gè)線程退出后,進(jìn)程才結(jié)束,否則進(jìn)程強(qiáng)制結(jié)束了,線程可能還沒(méi)反應(yīng)過(guò)來(lái);
pthread_exit(NULL);
}
g++ test.cpp -lpthread -o test.o 編譯
./test.o執(zhí)行
C語(yǔ)言如何同時(shí)運(yùn)行兩個(gè)子函數(shù)
同時(shí)執(zhí)行,使用線程了
C語(yǔ)言本身沒(méi)有提供線程的功能,只能調(diào)用平臺(tái)的線程來(lái)實(shí)現(xiàn)
如果在 WINDOWS 下面,可以參考一下 CreateThread 方法
名稱欄目:關(guān)于c語(yǔ)言怎么同時(shí)進(jìn)行函數(shù)的信息
轉(zhuǎn)載來(lái)于:http://www.dlmjj.cn/article/hshepj.html