嵌入式Linux面試試題庫(kù)匯總_第1頁(yè)
嵌入式Linux面試試題庫(kù)匯總_第2頁(yè)
嵌入式Linux面試試題庫(kù)匯總_第3頁(yè)
嵌入式Linux面試試題庫(kù)匯總_第4頁(yè)
嵌入式Linux面試試題庫(kù)匯總_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

嵌入式Linux系統(tǒng)基礎(chǔ)試題庫(kù)一.不定項(xiàng)選擇題:1.對(duì)于如下的定義,說(shuō)法正確的有(A)int*pb,pc;A、pb是一個(gè)指向整數(shù)的指針,pc是一個(gè)整數(shù)B、pb與pc都是指向整數(shù)的指針C、這個(gè)定義是錯(cuò)的D、這個(gè)定義是對(duì)的,但在編譯時(shí)會(huì)出現(xiàn)告警2.以下描述正確的有(D)A、sizeof(long)等于4.B、short類型的指針p,p++表示指向下一個(gè)字節(jié)。C、inta=0xffff0000,a的值為-65535.D、unsignedchar類型的取值范圍是0~256.3.以下代碼正確的是(C)A、chara[]={“ABC”};B、chara=”k”;c、chara[4]={0};d、chara[11]=”Helloword!”;4.下面的網(wǎng)絡(luò)協(xié)議中,面向連接的的協(xié)議是:A。A、傳輸控制協(xié)議B、用戶數(shù)據(jù)報(bào)協(xié)議C、網(wǎng)際協(xié)議D、網(wǎng)際控制報(bào)文協(xié)議5.Linux文件權(quán)限一共10位長(zhǎng)度,分成四段,第三段表示的內(nèi)容是C。A、文件類型B、文件所有者的權(quán)限C、文件所有者所在組的權(quán)限D(zhuǎn)、其他用戶的權(quán)限6.終止一個(gè)前臺(tái)進(jìn)程可能用到的命令與操作B。A、killB、<CTRL>+CC、shutdownD、halt7.在使用mkdir命令創(chuàng)建新的目錄時(shí),在其父目錄不存在時(shí)先創(chuàng)建父目錄的選項(xiàng)是D。A、-mB、-dC、-fD、-p8.下面關(guān)于i節(jié)點(diǎn)描述錯(cuò)誤的是A。A、i節(jié)點(diǎn)與文件是一一對(duì)應(yīng)的(每個(gè)文件都有唯一一個(gè)索引結(jié)點(diǎn)號(hào)及之對(duì)應(yīng),而對(duì)于一個(gè)索引結(jié)點(diǎn)號(hào),卻可以有多個(gè)文件名及之對(duì)應(yīng))B、i節(jié)點(diǎn)能描述文件占用的塊數(shù)C、i節(jié)點(diǎn)描述了文件大小與指向數(shù)據(jù)塊的指針D、通過(guò)i節(jié)點(diǎn)實(shí)現(xiàn)文件的邏輯結(jié)構(gòu)與物理結(jié)構(gòu)的轉(zhuǎn)換9.一個(gè)文件名字為rr.Z,可以用來(lái)解壓縮的命令是:D。A、tarB、gzipC、compressD、uncompress10.一臺(tái)主機(jī)要實(shí)現(xiàn)通過(guò)局域網(wǎng)及另一個(gè)局域網(wǎng)通信,需要做的工作是C。A、配置域名服務(wù)器B、定義一條本機(jī)指向所在網(wǎng)絡(luò)的路由C、定義一條本機(jī)指向所在網(wǎng)絡(luò)網(wǎng)關(guān)的路由D、定義一條本機(jī)指向目標(biāo)網(wǎng)絡(luò)網(wǎng)關(guān)的路由11.局域網(wǎng)的網(wǎng)絡(luò)地址/24,局域網(wǎng)絡(luò)連接其它網(wǎng)絡(luò)的網(wǎng)關(guān)地址是。主機(jī)0訪問(wèn)/24網(wǎng)絡(luò)時(shí),其路由設(shè)置正確的是B。A、routeadd–netgwnetmaskmetric1B、routeadd–netgwnetmaskmetric1C、routeadd–netgwnetmaskmetric1D、routeadddefaultnetmaskmetric112.下列提法中,不屬于ifconfig命令作用范圍的是D。A、配置本地回環(huán)地址B、配置網(wǎng)卡的IP地址C、激活網(wǎng)絡(luò)適配器D、加載網(wǎng)卡到內(nèi)核中13.在局域網(wǎng)絡(luò)內(nèi)的某臺(tái)主機(jī)用ping命令測(cè)試網(wǎng)絡(luò)連接時(shí)發(fā)現(xiàn)網(wǎng)絡(luò)內(nèi)部的主機(jī)都可以連同,而不能及公網(wǎng)連通,問(wèn)題可能是C。A、主機(jī)IP設(shè)置有誤B、沒(méi)有設(shè)置連接局域網(wǎng)的網(wǎng)關(guān)C、局域網(wǎng)的網(wǎng)關(guān)或主機(jī)的網(wǎng)關(guān)設(shè)置有誤D、局域網(wǎng)DNS服務(wù)器設(shè)置有誤14.不需要編譯內(nèi)核的情況是D。A、刪除系統(tǒng)不用的設(shè)備驅(qū)動(dòng)程序時(shí)B、升級(jí)內(nèi)核時(shí)C、添加新硬件時(shí)D、將網(wǎng)卡激活15.在shell中變量的賦值有四種方法,其中,采用name=12的方法稱A。A、直接賦值B、使用read命令C、使用命令行參數(shù)D、使用命令的輸出16.D命令可以從文本文件的每一行中截取指定內(nèi)容的數(shù)據(jù)。A、cpB、ddC、fmtD、cut17.下列不是Linux系統(tǒng)進(jìn)程類型的是D。A、交互進(jìn)程B、批處理進(jìn)程C、守護(hù)進(jìn)程D、就緒進(jìn)程18.內(nèi)核不包括的子系統(tǒng)是D。A、進(jìn)程管理系統(tǒng)B、內(nèi)存管理系統(tǒng)C、I/O管理系統(tǒng)D、硬件管理系統(tǒng)19.若一臺(tái)計(jì)算機(jī)的內(nèi)存為128MB,則交換分區(qū)的大小通常是C。A64MBB128MBC256MBD512MB20.在TCP/IP模型中,應(yīng)用層包含了所有的高層協(xié)議,在下列的一些應(yīng)用協(xié)議中,B是能夠?qū)崿F(xiàn)本地及遠(yuǎn)程主機(jī)之間的文件傳輸工作。AtelnetBFTPCSNMPDNFS21.用ls–al命令列出下面的文件列表,D文件是符號(hào)連接文件。A-rw-rw-rw-2hel-susers56Sep0911:05helloB-rwxrwxrwx2hel-susers56Sep0911:05goodbeyCdrwxr--r--1helusers1024Sep1008:10zhangDlrwxr--r--1helusers2024Sep1208:12cheng22.DNS域名系統(tǒng)主要負(fù)責(zé)主機(jī)名與A之間的解析。AIP地址BMAC地址C網(wǎng)絡(luò)地址D主機(jī)別名23.WWW服務(wù)器是在Internet上使用最為廣泛,它采用的是B結(jié)構(gòu)。A服務(wù)器/工作站BB/SC集中式D分布式24.NFS是C系統(tǒng)。A文件B磁盤(pán)C網(wǎng)絡(luò)文件D操作25.Linux文件系統(tǒng)的文件都按其作用分門(mén)別類地放在相關(guān)的目錄中,對(duì)于外部設(shè)備文件,一般應(yīng)將其放在C目錄中。A/binB/etcC/devD/lib26.如果限定程序的棧的大小是1K字節(jié),則以下代碼,運(yùn)行時(shí)會(huì)出錯(cuò)的有(C)A.staticintiA[512];intmain(){returnθ;}intmain(){staticintiA[512]returnθ;}intmain(){intiA[512]returnθ;}intmain(){Int*piApiA=malloc(512*sizeof(int));returnθ;}27.以下代碼最后一次打印結(jié)果是(C)voidfun(intiInputNum){staticintiCount=1;iCount=iCount+iInputNum;Print(“\niCount=%d”,icount+iInputNum);}for(i=1;i<3;i++){Fun(i);}A.iCount=3B.iCount=4C.iCount=6D.iCount=528.關(guān)于以下代碼,輸出結(jié)果是(A)VoidFun(){Inti;Intx[3][3]={1,2,3,4,5,6,7,8,9};Int*p;P=&x[1][1];For(i=0;i<4;i+=2)Printf(“%d”,p[i]);}A.57B.59C.13D.1529.以下語(yǔ)句中,能夠判斷uiNum(unsignedint)可以被8整除的有(ACD)A、If(((uiNum/8)*8)==uiNum)B、if((uiNum%8)==1)C、if((uiNum&θ×θ7)==θ)D、if(((uiNum>>3)<<3)==uiNum)30.關(guān)于以下代碼,描述正確的有(ABCD)代碼Ⅰ:constchar*pcStr=”abcdefg”;char*pcStr=”abcdefg”代碼Ⅱ:voidstring_sizeof(charszStr1[10]){charszStr2[10]=”12345”;printf(“%u,”,sizeof(szStr1));printf(“%u\r\n,”,sizeof(szStr2));return;}intmain(){string_sizeof(”12345”);代碼ⅢpcStr[3]=”a”;代碼ⅣunsignedintuiA=100;printf(“%s\r\n,”,uiA);return0;}A、代碼Ⅰ,const修飾符表明pcStr指針不能再次被賦值,也就是說(shuō)不能指向其他緩沖區(qū).B、代碼Ⅱ,程序的運(yùn)行結(jié)果是“4,10”.C、代碼Ⅲ,對(duì)pcStr[3]的賦值會(huì)導(dǎo)致程序訪問(wèn)非法地址.D、代碼Ⅳ,打印unsignedint時(shí)不應(yīng)該使用“%s”,會(huì)導(dǎo)致程序訪問(wèn)非法地址。31.關(guān)于結(jié)構(gòu)的大小,以下描述正確的有(AB)structA_SstructB_S{{unsignedshortus1;unsignedcharuc1;unsignedshortus2;unsignedintuc2;unsignedshortus3;unsignedshortus3;};};unionC_UunionD_U{{ unsignedintui1unsignedcharuc2;unsignedcharuc2;unsignedshortus3;unsignedshortus3;unsignedintui1;};};A、結(jié)構(gòu)structA_S的大小是6B、結(jié)構(gòu)structB_S的大小是12C、聯(lián)合unionC_U的大小是12D、聯(lián)合unionD_U的大小是1232.有如下鏈表與節(jié)點(diǎn)D,將D替換B,并刪除B,以下代碼正確的有(AD)單鏈表:ACBACBAA pstNextpstNextPstApstBDDpartD雙鏈表:pstNextCBApstNextCBA pstPrepstPrePstApstBDDpstDstructSLL{structSLL*pstNext;/*下一結(jié)點(diǎn)*/};structDLL{structDLL*pstNext;/*下一結(jié)點(diǎn)*/structDLL*pstPrev;/*前一結(jié)點(diǎn)*/};A.pstB=pstB->patNext;pstD->pstNext=pstB;pstA->pstNext=pstD;free(pstB);B.pstA->pstNext=pstD;pstD->pstNext=pstA->pstNext-pstNext;free(pstB);C.pstA->pstNext-pstNext-pstpre=pstD;pstD->pstNext=pstA->pstNext->pstNext;pstD->pstpre=pstB->pstpre;pstA->pstNext=pstB->pstNext-pstpre;free(pstB);D.pstD->pstNext=pstB->pstNext;pstD->pstNext->pstpre=pstD;pstD->pstpre=pstA;pstA->pstNext=pstD;free(pstB);33.實(shí)現(xiàn)從IP地址到以太網(wǎng)MAC地址轉(zhuǎn)換的命令為:C。A、pingB、ifconfigC、arpD、traceroute34.在vi編輯器中的命令模式下,鍵入B可在光標(biāo)當(dāng)前所在行下添加一新行。A、<a>B、<o>C、<I>D、A35.用命令ls-al顯示出文件ff的描述如下所示,由此可知文件ff的類型為A。-rwxr-xr--1rootroot599Cec1017:12ffA、普通文件B、硬鏈接C、目錄D、符號(hào)鏈接36.刪除文件命令為:D。A、mkdirB、rmdirC、mvD、rm37.DHCP是動(dòng)態(tài)主機(jī)配置協(xié)議的簡(jiǎn)稱,其作用是可以使網(wǎng)絡(luò)管理員通過(guò)一臺(tái)服務(wù)器來(lái)管理一個(gè)網(wǎng)絡(luò)系統(tǒng),自動(dòng)地為一個(gè)網(wǎng)絡(luò)中的主機(jī)分配___D______地址。A、網(wǎng)絡(luò)B、MACC、TCPD、IP38.為了保證在啟動(dòng)服務(wù)器時(shí)自動(dòng)啟動(dòng)DHCP進(jìn)程,應(yīng)將A文件中的dhcpd=no改為dhcpd=yes。A、B、C、inetd.confD、39.對(duì)文件進(jìn)行歸檔的命令為D。A、ddB、cpioC、gzipD、tar40.改變文件所有者的命令為C。A、chmodB、touchC、chownD、cat41.某32位系統(tǒng)下,C程序,請(qǐng)計(jì)算sizeof的值(A).charstr[]=“”;char*p=str;intn=10;請(qǐng)計(jì)算sizeof(str)=?()A、17B、16C、15D、1842.某32位系統(tǒng)下,C程序,請(qǐng)計(jì)算sizeof的值(B)charstr[]=“”char*p=str;intn=10;請(qǐng)計(jì)算sizeof(p)=()?A、5B、4C、6D、343.這段程序的輸出是(B)voidf(char**);main(){char*argv[]={"ab","cd","ef","gh","ij","kl"};f(argv);}voidf(char**p){char*t;t=(p+=sizeof(int))[-1];printf("%s",t);}A、abB、cdC、efD、gh44.在給定文件中查找及設(shè)定條件相符字符串的命令為:A。A、grepB、gzipC、findD、sort45.建立一個(gè)新文件可以使用的命令為D。A、chmodB、moreC、cpD、touch46.在下列命令中,不能顯示文本文件內(nèi)容的命令是:D。A、moreB、lessC、tailD、join47.文件權(quán)限讀、寫(xiě)、執(zhí)行的三種標(biāo)志符號(hào)依次是A。A、rwxB、xrwC、rdxD、srw48.Linux文件名的長(zhǎng)度不得超過(guò)C個(gè)字符。A、64B、128C、256D、51249.進(jìn)程有三種狀態(tài):CA準(zhǔn)備態(tài)、執(zhí)行態(tài)與退出態(tài)B精確態(tài)、模糊態(tài)與隨機(jī)態(tài)C運(yùn)行態(tài)、就緒態(tài)與等待態(tài)D手工態(tài)、自動(dòng)態(tài)與自由態(tài)50.crontab文件由六個(gè)域組成,每個(gè)域之間用空格分割,其排列如下:B。A、MINHOURDAYMONTHYEARCOMMANDB、MINHOURDAYMONTHDAYOFWEEKCOMMANDC、COMMANDHOURDAYMONTHDAYOFWEEKD、COMMANDYEARMONTHDAYHOURMIN二簡(jiǎn)答題1、簡(jiǎn)述堆與棧的區(qū)別答:棧是編譯器自動(dòng)分配與釋放,申請(qǐng)空間小,申請(qǐng)速度快,向低地址擴(kuò)展的連續(xù)區(qū)域,存放內(nèi)容多數(shù)有自動(dòng)進(jìn)行。堆是程序員申請(qǐng)與釋放,申請(qǐng)空間較大,相對(duì)較慢,向高地址擴(kuò)展的不連續(xù)區(qū)域,存放內(nèi)容程序員自己安排。2、棧與隊(duì)列有何區(qū)別?答:1、隊(duì)列先進(jìn)先出,棧先進(jìn)后出2、隊(duì)列一口插入一口刪除,而棧都是一個(gè)口3、遍歷數(shù)據(jù)的速度不同,棧需要開(kāi)辟空間來(lái)遍歷數(shù)據(jù),而隊(duì)列只需要指針完成。3、TCP與UDP之間的區(qū)別?答:TCP:傳輸控制協(xié)議,是一個(gè)基于連接的可靠的字節(jié)流服務(wù),雙方交換數(shù)據(jù)是必須先建立連接,才能傳輸數(shù)據(jù)。超時(shí)重發(fā),數(shù)據(jù)校驗(yàn),丟棄重復(fù)數(shù)據(jù),保證數(shù)據(jù)從一端傳到另一端。UDP:用戶數(shù)據(jù)報(bào)協(xié)議,是一個(gè)簡(jiǎn)單的面向數(shù)據(jù)報(bào)的運(yùn)輸層協(xié)議,不可靠,效率高。4、進(jìn)程與線程的區(qū)別?答:1、線程是組成進(jìn)程的基本單位。2、進(jìn)程有獨(dú)立的地址空間,線程也有一些自己的堆棧與局部變量,但是線程沒(méi)有獨(dú)立地址空間,一個(gè)進(jìn)程死掉,整個(gè)程序就死掉5、進(jìn)程間通信的方式都有哪些,有何區(qū)別?答:1、管道,socket,共享內(nèi)存,消息隊(duì)列,信號(hào)量級(jí)2、共享內(nèi)存:效率非常高6、哪些情況會(huì)導(dǎo)致內(nèi)存泄露?如何避免內(nèi)存泄露?答:1、堆內(nèi)存泄露,一般是指malloc,realloc,New,而未對(duì)應(yīng)的用free或delete釋放。2、系統(tǒng)資源泄漏,指程序使用系統(tǒng)分配的資源或函數(shù),如socket,handle等,而未用相應(yīng)的函數(shù)釋放掉。避免方法:養(yǎng)成良好的編碼習(xí)慣,在涉及內(nèi)存代碼編寫(xiě)時(shí)要謹(jǐn)慎。7、聲明與定義的區(qū)別?答:聲明是僅僅告訴編譯器,有個(gè)某類型的變量會(huì)被使用,但是編譯器并不會(huì)為它分配任何內(nèi)存。而定義就是分配了內(nèi)存。8、int(*a[10])(int)表示什么?答:int(*s[10])(int)函數(shù)指針數(shù)組,每個(gè)指針指向一個(gè)intfunc(intparam)的函數(shù)。答:編譯gcc–gfile.c–ofile,然后gdbfile運(yùn)行即可進(jìn)入GDB調(diào)試環(huán)境,這時(shí)可以設(shè)置斷點(diǎn)進(jìn)行跟蹤調(diào)試?yán)?breakmain,然后run,接下來(lái)next(簡(jiǎn)稱n),回車就直接默認(rèn)前一個(gè)命令,可以打印變量或指針值printi,遇見(jiàn)函數(shù)輸入step會(huì)進(jìn)入函數(shù)執(zhí)行,否則不進(jìn)入。10、關(guān)鍵字static的作用是什么?答:關(guān)鍵字static有三個(gè)明顯的作用:1)在函數(shù)體,一個(gè)被聲明為靜態(tài)的變量在這一函數(shù)被調(diào)用過(guò)程中維持其值不變。2)在模塊內(nèi)(但在函數(shù)體內(nèi)),一個(gè)被聲明為靜態(tài)的變量可以被模塊內(nèi)所用函數(shù)訪問(wèn),但不能被模塊外其他函數(shù)訪問(wèn)。它是一個(gè)本地的全局變量。3)在模塊內(nèi),一個(gè)被聲明為靜態(tài)的函數(shù)只可被這一模塊內(nèi)的其它函數(shù)調(diào)用。那就是,這個(gè)函數(shù)被限制在聲明它的模塊的本地范圍內(nèi)使用。11、inline及宏的區(qū)別答:宏:預(yù)處理階段不經(jīng)過(guò)安全檢查直接替換,不可以對(duì)數(shù)據(jù)成員進(jìn)行操作。Inline:編譯器經(jīng)過(guò)安全檢查之后替換函數(shù)調(diào)用,既提高代碼效率,又經(jīng)過(guò)安全檢查,而且還可以對(duì)數(shù)據(jù)成員進(jìn)行操作。12、有關(guān)內(nèi)存的思考題voidGetMemory(char*p){p=(char*)malloc(100);}voidTest(void){char*str=NULL;GetMemory(str);

strcpy(str,"helloworld");printf(str);}

請(qǐng)問(wèn)運(yùn)行Test函數(shù)會(huì)有什么樣的結(jié)果?答:程序崩潰。因?yàn)镚etMemory并不能傳遞動(dòng)態(tài)內(nèi)存,Test函數(shù)中的str一直都是NULL。strcpy(str,"helloworld");將使程序崩潰。

char*GetMemory(void){

charp[]="helloworld";returnp;}voidTest(void){char*str=NULL;str=GetMemory();

printf(str);}

請(qǐng)問(wèn)運(yùn)行Test函數(shù)會(huì)有什么樣的結(jié)果?答:可能是亂碼。因?yàn)镚etMemory返回的是指向“棧內(nèi)存”的指針,該指針的地址不是NULL,但其原現(xiàn)的內(nèi)容已經(jīng)被清除,新內(nèi)容不可知。voidGetMemory2(char**p,intnum){*p=(char*)malloc(num);}voidTest(void){char*str=NULL;GetMemory(&str,100);strcpy(str,"hello");

printf(str);

}請(qǐng)問(wèn)運(yùn)行Test函數(shù)會(huì)有什么樣的結(jié)果?答:(1)能夠輸出hello(2)內(nèi)存泄漏

voidTest(void){char*str=(char*)malloc(100);

strcpy(str,

“hello”);

free(str);

if(str!=NULL)

{

strcpy(str,

“world”);printf(str);}}請(qǐng)問(wèn)運(yùn)行Test函數(shù)會(huì)有什么樣的結(jié)果?答:篡改動(dòng)態(tài)內(nèi)存區(qū)的內(nèi)容,后果難以預(yù)料,非常危險(xiǎn)。因?yàn)閒ree(str);之后,str成為野指針,if(str!=NULL)語(yǔ)句不起作用。

13.寫(xiě)一個(gè)“標(biāo)準(zhǔn)”宏,這個(gè)宏輸入兩個(gè)參數(shù)并返回較小的一個(gè)。答案:#defineMin(X,Y)((X)>(Y)?(Y):(X))

14.什么是預(yù)編譯,何時(shí)需要預(yù)編譯:答案:1、總是使用不經(jīng)常改動(dòng)的大型代碼體。2、程序由多個(gè)模塊組成,所有模塊都使用一組標(biāo)準(zhǔn)的包含文件與相同的編譯選項(xiàng)。在這種情況下,可以將所有包含文件預(yù)編譯為一個(gè)預(yù)編譯頭。15.請(qǐng)問(wèn)以下代碼有什么問(wèn)題:int

main(){chara;char*str=&a;strcpy(str,"hello");printf(str);return0;}答案:沒(méi)有為str分配內(nèi)存空間,將會(huì)發(fā)生異常問(wèn)題出在將一個(gè)字符串復(fù)制進(jìn)一個(gè)字符變量指針?biāo)傅刂贰km然可以正確輸出結(jié)果,但因?yàn)樵浇邕M(jìn)行內(nèi)在讀寫(xiě)而導(dǎo)致程序崩潰。16.關(guān)鍵字volatile有什么含意?并舉出三個(gè)不同的例子?答案:提示編譯器對(duì)象的值可能在編譯器未監(jiān)測(cè)到的情況下改變。17.交換兩個(gè)變量的值,不使用第三個(gè)變量。即a=3,b=5,交換之后a=5,b=3;答案:有兩種解法,一種用算術(shù)算法,一種用^(異或)a=a+b;b=a-b;a=a-b;ora=a^b;//只能對(duì)int,char..b=a^b;a=a^b;ora^=b^=a;18、嵌入式系統(tǒng)中經(jīng)常要用到無(wú)限循環(huán),你怎么用C編寫(xiě)死循環(huán)?答案:第一方案:while(1)

{

;}第二方案:

for(;;)

{

;}第三個(gè)方案是用goto

Loop:

...

gotoLoop;19、用變量a給出下面的定義a)一個(gè)整型數(shù)(Aninteger)

b)一個(gè)指向整型數(shù)的指針(Apointertoaninteger)

c)一個(gè)指向指針的的指針,它指向的指針是指向一個(gè)整型數(shù)(Apointertoapointertoanintege)r

d)一個(gè)有10個(gè)整型數(shù)的數(shù)組(Anarrayof10integers)e)一個(gè)有10個(gè)指針的數(shù)組,該指針是指向一個(gè)整型數(shù)的。(Anarrayof10pointerstointegers)

f)一個(gè)指向有10個(gè)整型數(shù)數(shù)組的指針(Apointertoanarrayof10integers)

g)一個(gè)指向函數(shù)的指針,該函數(shù)有一個(gè)整型參數(shù)并返回一個(gè)整型數(shù)(Apointertoafunctionthattakesanintegerasanargumentandreturnsaninteger)

h)一個(gè)有10個(gè)指針的數(shù)組,該指針指向一個(gè)函數(shù),該函數(shù)有一個(gè)整型參數(shù)并返回一個(gè)整型數(shù)(Anarrayoftenpointerstofunctionsthattakeanintegerargumentandreturnaninteger)答案:a)inta;//Aninteger

b)int*a;//Apointertoaninteger

c)int**a;//Apointertoapointertoaninteger

d)inta[10];//Anarrayof10integerse)int*a[10];//Anarrayof10pointerstointegers

等價(jià)于int*(a[10]);f)int(*a)[10];//Apointertoanarrayof10integers

g)int(*max_function)(inta);//Apointertoafunctionathattakesanintegerargumentandreturnsanintegerh)int(*a[10])(int);//Anarrayof10pointerstofunctionsthattakeanintegerargumentandreturnaninteger20、簡(jiǎn)述嵌入式Linux系統(tǒng)開(kāi)發(fā)流程。答案:1.操作系統(tǒng)的裁剪。2.嵌入式操作系統(tǒng)內(nèi)核的配置與編譯。3.文件系統(tǒng)的建立。4用戶程序的編寫(xiě)與簡(jiǎn)單的仿真調(diào)試。5.整體系統(tǒng)的目標(biāo)板仿真調(diào)試。6.系統(tǒng)下載與脫機(jī)運(yùn)行。三.編程題。1.在Linux操作系統(tǒng)下,完成下列任務(wù):編程實(shí)現(xiàn)以下功能 主程序hello.c(打印HelloWorld!) 主程序通過(guò)頭文件調(diào)用message函數(shù) 頭文件hello.h(聲明message函數(shù)) message函數(shù)由定義(打印Thisisamessage!)參考答案:hello.c:#include<stdio.h>#include<stdlib.h>#include<string.h>#include"head.h"intmain(intargc,char*argv[]){printf("HelloWorld!\n");message();return0;}head.h:voidmessage(void);message.c:#include<stdio.h>voidmessage(void){printf("Thisisamessage!\n");}2.假定你在目錄/home/arm下有一個(gè)C程序,他由幾個(gè)單獨(dú)的文件組成,而這幾個(gè)文件又分為包含了其他文件,如下圖所示:文件 包含文件文件包含文件main.cstdiolist.clist.hsymbol.csymbol.htable.ctable.htable.hsymbol完成下列任務(wù):(1)編寫(xiě)makefile文件,最終的目標(biāo)文件為hello(交叉編譯器為arm-linux-gcc)(2)給出程序編譯

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論