2010年10月28日木曜日
[C][VC++ 2010] strcmpの戻り値
('A' < 'Z' < 'a' < 'z') = (0x41 < 0x5a < 0x61 < 0x7a)
// 2つの引数が同じ場合戻り値は 0
strcmp("A", "A") == 0
// 第一引数のほうが第二引数より小さければ戻り値は -1
strcmp("A", "B") == -1
// 第一引数のほうが第二引数より大きければ戻り値は 1
strcmp("B", "A") == 1
//==========================================
// 文字列の場合は頭から順に比較していきます。
//==========================================
// (i) A < E 先頭がこのような条件なので戻り値は -1
strcmp("ABC", "E") == -1
// (i) A == A, (ii) B == B, (iii) C < D ここで戻り値は -1 確定
strcmp("ABC", "ABD") == -1
// (i) A == A, (ii) B == B (iii) C == C, (iv) NULL < D ここで戻り値は -1 確定
strcmp("ABC", "ABCD") == -1
// (i) A < B, ここで戻り値は -1 確定
strcmp("ABC", "BCD") == -1
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿