C C 面試題常考點(一)

2021-05-27 17:46:46 字數 3192 閱讀 7829

求解

char str[100] = "hello world";

sizeof(str) = ?;

strlen(str) = ?

char str1[100] = "hello\0world";

strlen(str1) = ?

考點:sizeof函式和

strlen

函式。sizeof

函式求str

字串在記憶體中所佔的記憶體空間,而

str定義的時候在記憶體中申請了

100個位元組的空間,故

sizeof(str) = 100

;strlen

函式求字串的實際長度

,字串中到第乙個

'\0'

的長度,故

strlen(str) = 11(

不含'\0')

,strlen(str1) = 5。

注意:strlen

函式求得的字串長度不包含

'\0'。

strlen函式求得的長度是從字串開始到第乙個

'\0'

的長度

2 求解

char str = "hello";

sizeof(str) = ?;

strlen(str) = ?;

考點:字串。

以為字串以'\0'

結尾,會在記憶體中多分配乙個位元組儲存

'\0'

,而陣列沒指出大小,編譯器會根據後面的"h、

e、l、

l、o、

\0"判斷

中的值,則

sizeof(str) = 6

;strlen

求得的長度不包括

'\0'

,則strlen(str) = 5。

3 求解

void *p0;

int *p1;

char *p2;

long *p3;

float *p4;

double *p5;

sizeof(p0) = ?;

sizeof(p1) = ?;

sizeof(p2) = ?;

sizeof(p3) = ?;

sizeof(p4) = ?;

sizeof(p5) = ?;

考點:指標長度。

因為任何型別的指標在記憶體中都佔4

個位元組,所以

sizeof(p0)

、sizeof(p1)

、sizeof(p2)

、sizeof(p3)

、sizeof(p4)

、sizeof(p5)

都等於4。

4 求解

char *str = "hello";

sizeof(str) = ?;

strlen(str) = ?;

str在記憶體中佔?個位元組

考點:指標、字串。

str是指標,則

sizeof(str) = 4

;str

指向的字元長度為5,則

strlen(str) = 5

;字串以

'\0'

結尾,故

str在記憶體中實際儲存為"h、

e、l、

l、o、

\0",則

str在記憶體中佔

6個位元組。

5 找錯

void test1()

考點:陣列越界。

str1佔

11個位元組(字串以

'\0'

結尾),而

str陣列只有

10個位元組的記憶體空間。

str陣列不能存放下

str1

字串,會造成陣列越界。

6 找錯

char s1[10] = "hello";

char s2[20];

s2 = s1;

考點:陣列賦值。

因為s2

是乙個字元陣列,不能用另乙個字元陣列以等號直接賦值,應該使用

strcmp

賦值,即

strcpy(s2,s1)。

7 求解

string str;

cin >> str; (輸入hello world)

cout << str << endl;

考點:string

的cin

機制。

(1)、讀取並忽略開頭所有的空白字元

(如空格、換行符、製表符等);

(2)、讀取字元直至再次遇到空白字元,讀取終止。 則

str用

cout

輸出的是

hello。

8 求解

void test(char str[100])

考點:指標。

在函式test(char str[100])

中,str

作為形參,在函式體內,陣列名將失去其本身的內涵,僅僅是乙個指標。同時

str在函式體內,也失去了其常量特性,可以做自增、自減、可以被修改。因為

str僅僅只是乙個指標,則

sizeof(str) = 4。

9 求解

寫出布林變數與零值比較的表示式

考點:布林變數。

假設布林變數名字為flag

,它與零值比較的標準

if語句如下:

if(flag)           //表示flag為真

if(!flag) //表示flag為假

10 求解

寫出const

的兩個用途

考點:const

(1) 可以定義

const常量

(2) 

const

可以修飾函式的引數、返回值,甚至函式的定義體。被

const

修飾的東西都受到強制保護,可以預防意外的變動,能提高程式的健壯性

C C 面試題常考點(一)

1 求解char str 100 hello world sizeof str strlen str char str1 100 hello 0world strlen str1 考點 sizeof函式和 strlen 函式。sizeof 函式求str 字串在記憶體中所佔的記憶體空間,而 str定義...

C 常考面試題

1.string類的實現 string string const char str else string string const string str string string operator const string str delete m data m data new char st...

Redis常考面試題

select命令切換資料庫 select 1 dbsize檢視當前資料庫的key的數量 dbsize flushdb清空當前庫,flushall清空全部庫 1.對鍵的操作 檢視所有的key keys 判斷某個key是否存在 exists key的名字 檢視key的型別 type key 從某個庫中刪...