ViVi Home > 技術文書 > ポインタ入門 > ポインタ4択問題集


 
Follow @vivisuke Tweet

 

pointer's boot camp は C/C++ のポインタを学習するための4択問題集です。
以下の10問の答えを選択し、画面下部の【採点】を押してください。
※ sizeof(void*) は 4、sizeof(int) は 4、sizeof(short) は 2 とする。
※ 文字エンコーディングは ASCII 、文字列は '\0' を終端とする。
※ バイトオーダはリトルエンディアンとする。

Q1: ★★ ヌルターミネイトされた文字列 char *str の文字数を len に設定するのはどれ?ただし len は 0 に初期化されているものとする。
while (str[len+1] != '\0') { ++len, ++str; }
while (*++str != '\0') ++len;
while (str[len] != '\0') { ++len, ++str; }
while (*str++ != '\0') ++len;
Q2: ★ char *ptr が文字列を指している時、指している先が数字文字かどうかを判定するコードはどれ?
if( *ptr >= '0' || *ptr <= '9' ) { ... }
if( *ptr >= 0 && *ptr <= 9 ) { ... }
if( *ptr >= 0 || *ptr <= 9 ) { ... }
if( *ptr >= '0' && *ptr <= '9' ) { ... }
Q3: ★ 2進数の 1010 0011 0101 1111 を16進数に変換すると?
0xa25f
0xf53a
0xa35f
0xa14f
Q4: ★ int *ptr; があるとき、ptr の指す先から i 個先のデータを取得するには?
*ptr + i
ptr+i
*(ptr + i)
ptr(i)
Q5: ★ char *ptr = (char *)0x100; char *ptr2 = ++ptr; を実行した後の、ptr2 の値はいくつ?
0x102
0x101
0x100
0x104
Q6: ★★★ 単方向リンクリスト構造体 struct Node { int val; Node *next}; があり、Node *ptr; が最初のノードへのポインタを指している時、ptr を末尾のノードまで進めるコードはどれ?ただし、リストは空ではなく、末尾のノードの next は 0 とする。
while (ptr->next != 0) { ptr = ptr->next; }
while (ptr->next != 0) { ++ptr; }
while (ptr != 0) { ++ptr; }
while (ptr != 0) { ptr = ptr->next; }
Q7: ★ char *ptr = "abcd"; の時、ptr[2] は何を返しますか?
'b'
'a'
'c'
'd'
Q8: ★ char *ptr = (char *)0x100; char *ptr2 = ptr++; を実行した後の、ptr2 の値はいくつ?
0x102
0x104
0x101
0x100
Q9: ★★ int *first, *last; が定義され、どこかの範囲を指している時、first と last の中間地点を求める正しいコードはどれ?
first + (last - first) / 2;
(first + last) / 2;
(int *)(((int)first + (int)last) / 2);
first + ((int)last - (int)first) / 2;
Q10: ★★ #define CHARPTR char* とし、CHARPTR p1, p2; と宣言した時の p2 の型は何?
void 型
char へのポインタへのポインタ型
char へのポインタ型
char 型


※ 問題は10問ランダムに表示されます。 総問題数:87

最近10人の平均点:4.2
4 6 8 5 0 6 4 4 4 1 (latest)
最近100人の平均点:3.6
最近1000人の平均点:4.7
過去全部(11587人)の平均点:5.0

満点獲得者名と記念コメント:
24/04/16 10:23 名無し さん
24/04/12 03:04 名無し さん
24/04/07 20:14 名無し さん
24/04/05 20:32 名無し さん
24/04/05 06:16 名無し さん
24/04/04 20:05 名無し さん
24/03/14 17:07 名無し さん
24/01/19 10:22 k さん
 「thank you」
23/10/17 09:51 名無し さん
23/09/21 04:08 名無し さん
23/09/18 13:27 名無し さん
23/09/15 20:24 名無し さん
23/09/09 06:12 名無し さん
23/09/07 03:55 名無し さん
23/07/23 11:17 名無し さん
23/07/20 14:45 名無し さん
23/05/01 17:19 名無し さん
 「y」
23/05/01 17:13 名無し さん
 「e」
23/05/01 09:39 名無し さん
 「h」
23/04/28 13:47 名無し さん
 「yhvh」

その他のジャンルの問題もあるよ:

Copyright (C) 2013 by N.Tsuda, All Rights Reserved.