<em id="0a85b"><option id="0a85b"></option></em>

<abbr id="0a85b"></abbr>

      <nobr id="0a85b"></nobr>
        <tr id="0a85b"></tr>
        9久久伊人精品综合,亚洲一区精品视频在线,成 人免费va视频,国产一区二区三区黄网,99国产精品永久免费视频,亚洲毛片多多影院,精品久久久无码人妻中文字幕,无码国产欧美一区二区三区不卡
        學習啦 > 創業指南 > 職場 > 筆試題 > C/C++筆試題目

        C/C++筆試題目

        時間: 護托1061 分享

        C/C++筆試題目

          C++這個詞在中國大陸的程序員圈子中通常被讀做“C加加”,而西方的程序員通常讀做“C plus plus”,“CPP”。 它是一種使用非常廣泛的計算機編程語言。下面就由學習啦小編為大家介紹一下C/C++筆試題目的文章,歡迎閱讀。

          C/C++筆試題目篇1

          1.編寫my_strcpy函數,實現與庫函數strcpy類似的功能,不能使用任何庫函數;

          答:char *strcpy(char *strDest, const char *strSrc)

          {

          if ( strDest == NULL || strSrc == NULL)

          return NULL ;

          if ( strDest == strSrc)

          returnstrDest ;

          char *tempptr = strDest ;

          while( (*strDest++ = *strSrc++) != ‘’);

          returntempptr ;

          }

          2. 頭文件中的ifndef/define/endif的作用?

          答:防止該頭文件被重復引用。

          3. #i nclude與#i nclude “file.h”的區別?

          答:前者編譯器從標準庫路徑開始搜索file.h,而后者編譯器從用戶的工作路徑開始搜索file.h。

          4. 在C++ 程序中調用被C 編譯器編譯后的函數,為什么要加extern“C”?

          答:extern是C/C++語言中表明函數和全局變量作用范圍(可見性)的關鍵字,其聲明的函數和變量可以在本模塊或其它模塊中使用。

          通常,在模塊的頭文件中對本模塊提供給其它模塊引用的函數和全局變量以關鍵字extern聲明。

          5. 面向對象的三個基本特征,并簡單敘述之?

          答:1)封裝:將客觀事物抽象成類,每個類對自身的數據和方法實行protection(private, protected,public)

          2)繼承:實現繼承(指使用基類的屬性和方法而無需額外編碼的能力)、可視繼承(子窗體使用父窗體的外觀和實現代碼)、接口繼承(僅使用屬性和方法,實現滯后到子類實現)。

          3)多態:允許將子類類型的指針賦值給父類類型的指針。

          C/C++筆試題目篇2

          1. 重載(overload)和重寫(overried,有的書也叫做“覆蓋”)的區別?

          答:從定義上來說:

          重載:是指允許存在多個同名函數,而這些函數的參數表不同(或許參數個數不同,或許參數類型不同,或許兩者都不同)。

          重寫:是指子類重新定義復類虛函數的方法。

          從實現原理上來說:

          重載:編譯器根據函數不同的參數表,對同名函數的名稱做修飾,然后這些同名函數就成了不同的函數。

          重寫:當子類重新定義了父類的虛函數后,父類指針根據賦給它的不同的子類指針,動態的調用屬于子類的該函數,這樣的函數調用在編譯期間是無法確定的(調用的子類的虛函數的地址無法給出)。

          2. 多態的作用?

          答:主要是兩個:1)隱藏實現細節,使得代碼能夠模塊化;擴展代碼模塊,實現代碼重用;2)接口重用,為了類在繼承和派生的時候,保證使用家族中任一類的實例的某一屬性時的正確調用。

          3. 分別寫出BOOL,int,float,指針類型的變量a 與“零”的比較語句。

          答:BOOL :if ( !a ) or if(a)

          int :if ( a ==0)

          float :const EXPRESSION EXP = 0.000001

          if ( a < EXP && a >-EXP)

          pointer : if ( a != NULL) or if(a == NULL)

          4. 請說出const與#define 相比,有何優點?

          答案:1) const 常量有數據類型,而宏常量沒有數據類型。編譯器可以對前者進行類型安全檢查。而對后者只進行字符替換,沒有類型安全檢查,并且在字符替換可能會產生意料不到的錯誤。

          2) 有些集成化的調試工具可以對const 常量進行調試,但是不能對宏常量進行調試。

          5.簡述數組與指針的區別?

          數組要么在靜態存儲區被創建(如全局數組),要么在棧上被創建。指針可以隨時指向任意類型的內存塊。

          (1)修改內容上的差別

          char a[] = “hello”;

          a[0] = ‘X’;

          char *p = “world”; // 注意p 指向常量字符串

          p[0] = ‘X’; // 編譯器不能發現該錯誤,運行時錯誤

          (2) 用運算符sizeof 可以計算出數組的容量(字節數)。sizeof(p),p 為指針得到的是一個指針變量的字節數,而不是p 所指的內存容量。C++/C 語言沒有辦法知道指針所指的內存容量,除非在申請內存時記住它。注意當數組作為函數的參數進行傳遞時,該數組自動退化為同類型的指針。

          char a[] = “hello world”;

          char *p = a;

          cout< cout< 計算數組和指針的內存容量

          voidFunc(char a[100])

          {

          cout< }

          C/C++筆試題目篇3

          1.變量的聲明和定義有什么區別?

          答:聲明變量不分配空間,定義變量要分配空間。聲明主要是告訴編譯器,后面的引用都按聲明的格式。定義其實包含了聲明的意思,同時要分配內存空間。

          2. 解釋堆和棧的區別。

          答:堆(heap)——一般由程序員分配釋放,若程序員不釋放,程序結束時可能由OS回收。注意它與數據結構中的堆是兩回事,分配方式倒是類似于鏈表。速度比較慢,而且容易產生內存碎片,不過用起來最方便。

          棧(stack)——由編譯器自動分配釋放,存放函數的參數值,局部變量的值等。其操作方式類似于數據結構中的棧。由系統自動分配,速度較快。但程序員是無法控制的。

          3. const的作用是什么?

          答:(1)可以定義const常量

          (2)const可以修飾函數的參數、返回值,甚至函數的定義體。被const修飾的東西都受到強制保護,可以預防意外的變動,能提高程序的健壯性。

          4. 下列哪兩個是等同的

          int b;

          A constint* a = &b; //指向常量的指針,不能通過指針改變b,但指針的地址可以改變。

          B const* int a = &b;// 指針的地址不可以改變,但可以通過指針改變b的值

          C constint* const a = &b; //指針指向的值,和指針本身的地址都不能改變

          D intconst* const a = &b;//與c相同

          5. 完成程序,實現對數組的降序排序

          #include

          void sort(int array[] );

          int main()

          {

          int array[]={45,56,76,234,1,34,23,2,3}; //數字任//意給出

          sort( array );

          return 0;

          }

          void sort( int array[] )

          {____________________________________

          inti,j,k;

          for(i=1;i<=7;i++) { if(array[i]>array[i-1])

          {

          k=ARRAY[i];

          j=i-1;

          do

          {

          array[j+1]=array[j];

          j– ;

          }

          while(k>array[j]&&j>=0);

          array[j+1]=k;

          }

          }

          —————————————————–

          }

          6. int i=(j=4,k=8,l=16,m=32); printf(“%d”, i); 輸出是多少?

          答:相當于 i=j=4;i=k=8;i=l=16;i=m=32; 故最后i=32;

        熱門文章

        3157674 主站蜘蛛池模板: 欧美黑人性暴力猛交高清| 亚洲精品中文字幕第一页| 我国产码在线观看av哈哈哈网站| 精品午夜福利短视频一区| 精品无码国产不卡在线观看| 久久亚洲精品成人综合网| 亚洲AV永久无码天堂网一线| 国产在线无码不卡播放| 日本熟妇XXXX潮喷视频| 欧美成人精品一级在线观看| a级国产乱理伦片在线观看al| 好男人社区神马在线观看www| 精品国产三级a∨在线欧美| 日韩国产av一区二区三区精品| 亚洲第一香蕉视频啪啪爽| 99热这里只有成人精品国产| 国产高清在线精品二区| 国产中年熟女高潮大集合| 亚洲中文久久久精品无码| 国产毛片基地| 国产微拍精品一区二区| 日韩在线一区二区每天更新| 午夜毛片精彩毛片| 色国产视频| 国产精品女生自拍第一区| 国产精品福利一区二区三区| 公天天吃我奶躁我的在| 一个人看的www视频播放在线观看 色综合久久久久综合99 | 亚洲有无码av在线播放| 亚洲爆乳少妇无码激情| 91福利视频一区二区| 国内精品伊人久久久久av| 国产综合久久久久影院| 亚洲男人精品青春的天堂| 日本精品中文字幕在线不卡| 欧美 国产 人人视频| 亚洲精品成人久久av| 欧美成人午夜在线观看视频| 亚洲男人在线天堂| 最近中文字幕高清免费大全1| 日韩乱码视频一区二区三区|