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: ★ short *p1 = (short *)0x100; short *p2 = (short *)0x110; の時、p2 - p1 の値はいくつですか?
2
4
8
16
Q2: ★★ int *first, *last; が定義され、どこかの範囲を指している時、first と last の中間地点を求める正しいコードはどれ?
first + (last - first) / 2;
(first + last) / 2;
(int *)(((int)first + (int)last) / 2);
first + ((int)last - (int)first) / 2;
Q3: ★ strdup(char *str) のためにメモリをアロケートするのはどれが正しい?ただし、str の文字数を len とする。
new char[len]
new char[len+1]
new char[len-1]
new char[len*2]
Q4: ★★ char *str 中の文字の中で char c と等しい文字の数を求め、n に設定するコードはどれ?ただし int n は0 で初期化されているものとする。
while (*str != '\0') { if (*str++ == c) ++n; }
while (*str++ != '\0') { if (*str == c) ++n; }
while (*str++ != '\0') { if (*str++ == c) ++n; }
while (*str != '\0') { if (*str == c) ++n; }
Q5: ★ int *p1 = (int *)0x100; int *p2 = (int *)0x110; の時、p2 - p1 の値はいくつですか?
2
16
4
8
Q6: ★★★ 単方向リンクリスト構造体 struct Node { int val; Node *next}; と、Node *ptr1; Node *ptr2; があるとき、ptr1 の次に ptr2 をリンクするコードはどれ?
ptr1->next = ptr2->next;
ptr2->next = ptr1->next;
ptr2->next = ptr1;
ptr1->next = ptr2;
Q7: ★ char *ptr = (char *)0x100; ++ptr; を実行した後の、ptr の値はいくつ?
0x100
0x101
0x102
0x104
Q8: ★ char **ptr; が宣言されているとき *ptr の型は何?
char
char へのポインタへのポインタ
char へのポインタ
void 型
Q9: ★★ ヌルターミネイトされた文字列 char *str の文字数を len に設定するのはどれ?ただし len は 0 に初期化されているものとする。
while (*++str != '\0') ++len;
while (str[len] != '\0') { ++len, ++str; }
while (str[len+1] != '\0') { ++len, ++str; }
while (*str++ != '\0') ++len;
Q10: ★★ int型で引数無しの関数(例:int foo())へのポインタ ptr がある関数を指しているとき、それをコールするコードはどれ?
ptr*();
*ptr();
*ptr;
ptr();


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

最近10人の平均点:1.7
0 0 0 0 0 2 9 0 1 5 (latest)
最近100人の平均点:4.5
最近1000人の平均点:4.7
過去全部(11917人)の平均点:5.0

満点獲得者名と記念コメント:
25/11/15 10:41 名無し さん
25/11/12 20:06 名無し さん
25/11/10 02:58 名無し さん
25/11/06 13:36 名無し さん
25/10/31 23:48 名無し さん
25/10/29 16:11 名無し さん
25/10/27 06:29 名無し さん
25/10/25 06:28 名無し さん
25/10/11 13:04 名無し さん
25/10/11 12:58 名無し さん
25/10/11 12:58 名無し さん
25/05/31 01:37 名無し さん
25/05/13 16:09 名無し さん
25/05/11 02:47 名無し さん
25/03/13 07:38 名無し さん
25/01/06 18:23 名無し さん
25/01/02 15:12 名無し さん
25/01/01 17:39 名無し さん
24/12/31 07:04 名無し さん
24/12/28 22:20 名無し さん

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

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