激情欧美日韩一区二区,浪货撅高贱屁股求主人调教视频,精品无码成人片一区二区98,国产高清av在线播放,色翁荡息又大又硬又粗视频

C/C++經(jīng)典面試題

時(shí)間:2024-06-13 22:09:33 面試筆試 我要投稿
  • 相關(guān)推薦

C/C++經(jīng)典面試題

  面試題 1:變量的聲明和定義有什么區別

C/C++經(jīng)典面試題

  為變量分配地址和存儲空間的稱(chēng)為定義,不分配地址的稱(chēng)為聲明。一個(gè)變量可以在多個(gè)地方聲明,

  但是只在一個(gè)地方定義。加入 extern修飾的是變量的聲明,說(shuō)明此變量將在文件以外或在文件后面部分

  定義。

  說(shuō)明:很多時(shí)候一個(gè)變量,只是聲明不分配內存空間,直到具體使用時(shí)才初始化,分配內存空間,

  如外部變量。

  面試題 2:寫(xiě)出 bool 、int、 float、指針變量與“零值”比較的 if 語(yǔ)句

  bool型數據:

  if( flag )

  {

  A;

  }

  else

  {

  B;

  }

  int型數據:

  if( 0 != flag )

  {

  A;

  }

  else

  {

  B;

  }

  指針型數:

  if( NULL == flag )

  {

  A;

  }

  else

  {

  B;

  }

  float型數據:

  if ( ( flag >= NORM ) && ( flag <= NORM ) )

  {

  A;

  2

  }

  注意:應特別注意在 int、指針型變量和“零值”比較的時(shí)候,把“零值”放在左邊,這樣當把“==”

  誤寫(xiě)成“=”時(shí),編譯器可以報錯,否則這種邏輯錯誤不容易發(fā)現,并且可能導致很?chē)乐氐暮蠊?/p>

  面試題 3:sizeof 和strlen的區別

  sizeof和 strlen 有以下區別:

   sizeof是一個(gè)操作符,strlen是庫函數。

   sizeof的參數可以是數據的類(lèi)型,也可以是變量,而 strlen只能以結尾為‘\0‘的字符串作參數。

   編譯器在編譯時(shí)就計算出了 sizeof 的結果。而 strlen 函數必須在運行時(shí)才能計算出來(lái)。并且 sizeof

  計算的是數據類(lèi)型占內存的大小,而 strlen計算的是字符串實(shí)際的長(cháng)度。

   數組做sizeof的參數不退化,傳遞給strlen就退化為指針了。

  注意:有些是操作符看起來(lái)像是函數,而有些函數名看起來(lái)又像操作符,這類(lèi)容易混淆的名稱(chēng)一定

  要加以區分,否則遇到數組名這類(lèi)特殊數據類(lèi)型作參數時(shí)就很容易出錯。最容易混淆為函數的操作符就

  是 sizeof。

  面試題 4:C 語(yǔ)言的關(guān)鍵字 static 和 C++ 的關(guān)鍵字 static 有什么區別

  在C 中static 用來(lái)修飾局部靜態(tài)變量和外部靜態(tài)變量、函數。而 C++中除了上述功能外,還用來(lái)定

  義類(lèi)的成員變量和函數。即靜態(tài)成員和靜態(tài)成員函數。

  注意:編程時(shí) static的記憶性,和全局性的特點(diǎn)可以讓在不同時(shí)期調用的函數進(jìn)行通信,傳遞信息,

  而 C++的靜態(tài)成員則可以在多個(gè)對象實(shí)例間進(jìn)行通信,傳遞信息。

  面試題 5:C中的 malloc 和C++中的 new有什么區別

  malloc和 new有以下不同:

  (1)new、 是操作符,可以重載,只能在 C++中使用。

  (2)malloc、free是函數,可以覆蓋,C、C++中都可以使用。

  (3)new 可以調用對象的構造函數,對應的 調用相應的析構函數。

  (4)malloc僅僅分配內存,free 僅僅回收內存,并不執行構造和析構函數

  (5)new、 返回的是某種數據類(lèi)型指針,malloc、free 返回的是void指針。

  注意:malloc申請的內存空間要用 free釋放,而 new申請的內存空間要用 釋放,不要混用。

  因為兩者實(shí)現的機理不同。

  面試題 6:寫(xiě)一個(gè)“標準”宏 MIN

  #define min(a,b)((a)<=(b)?(a):(b))

  注意:在調用時(shí)一定要注意這個(gè)宏定義的副作用,如下調用:

  ((++*p)<=(x)?(++*p):(x)。

  p指針就自加了兩次,違背了 MIN的本意。

  面試題 7:一個(gè)指針可以是 volatile 嗎

  可以,因為指針和普通變量一樣,有時(shí)也有變化程序的不可控性。常見(jiàn)例:子中斷服務(wù)子程序修改

  一個(gè)指向一個(gè) buffer的指針時(shí),必須用 volatile來(lái)修飾這個(gè)指針。

  說(shuō)明:指針是一種普通的變量,從訪(fǎng)問(wèn)上沒(méi)有什么不同于其他變量的特性。其保存的數值是個(gè)整型

  數據,和整型變量不同的是,這個(gè)整型數據指向的是一段內存地址。

  面試題 8:a 和&a 有什么區別

  請寫(xiě)出以下代碼的打印結果,主要目的是考察 a和&a的區別。

  #include

  void main( void )

  {

  int a[5]={1,2,3,4,5};

  int *ptr=(int *)(&a+1);

  printf(“%d,%d”,*(a+1),*(ptr-1));

  return;

  }

  輸出結果:2,5。

  注意:數組名 a可以作數組的首地址,而&a是數組的指針。思考,將原式的 int *ptr=(int *)(&a+1);

  改為 int *ptr=(int *)(a+1);時(shí)輸出結果將是什么呢?

  面試題 9:簡(jiǎn)述 C、C++程序編譯的內存分配情況

  C、C++中內存分配方式可以分為三種:

  (1)從靜態(tài)存儲區域分配:

  內存在程序編譯時(shí)就已經(jīng)分配好,這塊內存在程序的整個(gè)運行期間都存在。速度快、不容易出錯,

  因為有系統會(huì )善后。例如全局變量,static變量等。

  (2)在棧上分配:

  在執行函數時(shí),函數內局部變量的存儲單元都在棧上創(chuàng )建,函數執行結束時(shí)這些存儲單元自動(dòng)被釋

  放。棧內存分配運算內置于處理器的指令集中,效率很高,但是分配的內存容量有限。

  (3)從堆上分配:

  即動(dòng)態(tài)內存分配。程序在運行的時(shí)候用 malloc 或 new 申請任意大小的內存,程序員自己負責在何

  時(shí)用free 或 釋放內存。動(dòng)態(tài)內存的生存期由程序員決定,使用非常靈活。如果在堆上分配了空間,

  就有責任回收它,否則運行的程序會(huì )出現內存泄漏,另外頻繁地分配和釋放不同大小的堆空間將會(huì )產(chǎn)生

  堆內碎塊。

  一個(gè)C、C++程序編譯時(shí)內存分為 5大存儲區:堆區、棧區、全局區、文字常量區、程序代碼區。

  4

  面試題 10:簡(jiǎn)述 strcpy、sprintf 與 memcpy的區別

  三者主要有以下不同之處:

  (1)操作對象不同,strcpy的兩個(gè)操作對象均為字符串,sprintf的操作源對象可以是多種數據類(lèi)型,

  目的操作對象是字符串, memcpy 的兩個(gè)對象就是兩個(gè)任意可操作的內存地址,并不限于何種數據類(lèi)型。

  (2)執行效率不同,memcpy最高,strcpy次之,sprintf的效率最低。

  (3)實(shí)現功能不同,strcpy主要實(shí)現字符串變量間的拷貝,sprintf 主要實(shí)現其他數據類(lèi)型格式到字

  符串的轉化,memcpy主要是內存塊間的拷貝。

  說(shuō)明:strcpy、sprintf 與memcpy都可以實(shí)現拷貝的功能,但是針對的對象不同,根據實(shí)際需求,來(lái)

  選擇合適的函數實(shí)現拷貝功能。


【C/C++經(jīng)典面試題】相關(guān)文章:

普天C++筆試題02-18

基礎C++/C語(yǔ)言筆試題分享11-21

群碩筆試題Java和C++、C#11-21

C++工程師筆試題目11-25

C++程序員求職信11-21

最新凌陽(yáng)科技C++筆試分享11-21

C++程序員求職信范文11-21

UC(優(yōu)視科技)2014實(shí)習筆試題回憶版 C/C++編程11-21

有心情的試一試,考查C++/C程序員的基本編程技能11-11

面試題精選02-18

激情欧美日韩一区二区,浪货撅高贱屁股求主人调教视频,精品无码成人片一区二区98,国产高清av在线播放,色翁荡息又大又硬又粗视频