C語言execl()函數(shù):執(zhí)行文件函數(shù)
創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供渝中網(wǎng)站建設(shè)、渝中做網(wǎng)站、渝中網(wǎng)站設(shè)計、渝中網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、渝中企業(yè)網(wǎng)站模板建站服務(wù),10多年渝中做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。
相關(guān)函數(shù):fork, execle, execlp, execv, execve, execvp
頭文件:#include unistd.h
定義函數(shù):int execl(const char * path, const char * arg, ...);
函數(shù)說明:execl()用來執(zhí)行參數(shù)path 字符串所代表的文件路徑, 接下來的參數(shù)代表執(zhí)行該文件時傳遞過去的argv(0), argv[1], ..., 最后一個參數(shù)必須用空指針(NULL)作結(jié)束.
返回值:如果執(zhí)行成功則函數(shù)不會返回, 執(zhí)行失敗則直接返回-1, 失敗原因存于errno 中.
范例
#include unistd.h
main()
{
execl("/bin/ls", "ls", "-al", "/etc/passwd", (char *)0);
}
執(zhí)行:
/*執(zhí)行/bin/ls -al /etc/passwd */
-rw-r--r-- 1 root root 705 Sep 3 13 :52 /etc/passwd
main()函數(shù)稱之為主函數(shù),一個C程序總是從main()函數(shù)開始執(zhí)行的,但是不一定在main函數(shù)最后結(jié)束。
在 main() 之后的最后一條語句結(jié)束后,程序還要運行一些代碼,以正常返回操作系統(tǒng)。main函數(shù)執(zhí)行完后還執(zhí)行其他語句,
有時候需要有一種與程序退出方式無關(guān)的方法來進(jìn)行程序退出時的必要處理,方法就是用atexit()函數(shù)來注冊程序正常終止時要被調(diào)用的函數(shù),atexit()函數(shù)的參數(shù)是一個函數(shù)指針,函數(shù)指針指向一個沒有參數(shù)也沒有返回值的函數(shù),它的原型是:
int atexit(void (*)(void));
擴(kuò)展資料
main函數(shù)的使用
示例:
#include stdlib.h
#include stdio.h
void fn1(void);
void fn2(void);
int main(void)
{
atexit(fn1);
atexit(fn2);
printf("main exit ...\n");
return 0;
}
void fn1()
{
printf("calling fn1()...\n");
}
void fn2()
{
printf("calling fn2()...\n");
}
參考資料來源:百度百科—main函數(shù)
C語言中,函數(shù)調(diào)用的一般形式為:
函數(shù)名(實際參數(shù)表)
對無參函數(shù)調(diào)用時則無實際參數(shù)表。實際參數(shù)表中的參數(shù)可以是常數(shù)、變量或其它構(gòu)造類型數(shù)據(jù)及表達(dá)式。各實參之間用逗號分隔。
#includestdio.h
int?fun(int?x,?int?y);?//?函數(shù)聲明,如果函數(shù)寫在被調(diào)用處之前,可以不用聲明
void?main()
{
int?a=1,?b=2,?c;
c?=?fun(a,?b);?//?函數(shù)的調(diào)用,調(diào)用自定義函數(shù)fun,其中a,b為實際參數(shù),傳遞給被調(diào)用函數(shù)的輸入值
}
//?自定義函數(shù)fun
int?fun(int?x,?int?y)??//?函數(shù)首部
{??//?{}中的語言為函數(shù)體
return?xy???x?:?y;??//?返回x和y中較大的一個數(shù)
}
擴(kuò)展資料
C語言中不允許作嵌套的函數(shù)定義。因此各函數(shù)之間是平行的,不存在上一級函數(shù)和下一級函數(shù)的問題。但是C語言允許在一個函數(shù)的定義中出現(xiàn)對另一個函數(shù)的調(diào)用。
這樣就出現(xiàn)了函數(shù)的嵌套調(diào)用。即在被調(diào)函數(shù)中又調(diào)用其它函數(shù)。這與其它語言的子程序嵌套的情形是類似的。其關(guān)系可表示如圖。
圖表示了兩層嵌套的情形。其執(zhí)行過程是:執(zhí)行main函數(shù)中調(diào)用a函數(shù)的語句時,即轉(zhuǎn)去執(zhí)行a函數(shù),在a函數(shù)中調(diào)用b 函數(shù)時,又轉(zhuǎn)去執(zhí)行b函數(shù),b函數(shù)執(zhí)行完畢返回a函數(shù)的斷點繼續(xù)執(zhí)行,a函數(shù)執(zhí)行完畢返回main函數(shù)的斷點繼續(xù)執(zhí)行。
參考資料:函數(shù)調(diào)用_百度百科
前面給定一個接收字符的變量,比如c,
switch(c)
{
case 'a':A;break;
case 'b':B;break;
.
.
.
}
一個c語言程序的執(zhí)行,從main函數(shù)中的指令開始執(zhí)行。
一個程序,無論復(fù)雜或簡單,總體上都是一個“函數(shù)”;這個函數(shù)就稱為“main()
函數(shù)”,也就是“主函數(shù)”。比如有個“做菜”程序,那么“
做菜
”這個過程就是“主函數(shù)”。在主函數(shù)中,根據(jù)情況,你可能還需要調(diào)用“買菜,切菜,炒菜”等子函數(shù)。
main函數(shù)在程序中大多數(shù)是必須存在的,但是依然有例外情況,比如windows編程中可以編寫一個動態(tài)鏈接庫(dll)模塊,這是其他windows程序可以使用的代碼。由于dll模塊不是獨立的程序,因此不需要main函數(shù)。再比如,用于專業(yè)環(huán)境的程序-----如機(jī)器人中的控制芯片--可能不需要main函數(shù)。
因為C語言程序是從main函數(shù)開始執(zhí)行的,而不是從第一個定義的函數(shù)開始執(zhí)行的。操作方法如下:
1、首先在電腦上打開編輯軟件,然后點擊創(chuàng)建頭文件。
2、寫C語言標(biāo)準(zhǔn)頭文件#includestdio.h 。
3、寫main函數(shù)void main(){}。
4、寫輸出函數(shù)printf("Hello World");。
5、運行結(jié)果,就完成了。
分享題目:c語言程序執(zhí)行函數(shù),c語言程序執(zhí)行函數(shù)是什么
鏈接分享:http://chinadenli.net/article38/dsshepp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、品牌網(wǎng)站建設(shè)、網(wǎng)站改版、網(wǎng)站建設(shè)、手機(jī)網(wǎng)站建設(shè)、自適應(yīng)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)