殆どというか、Cでしか書いていないのはご愛嬌でw 実行環境はCentOS5のコンパイル環境。文字コード設定はもちろんUTF-8 source#include <string>
#include <iostream>
using namespace std;
int main()
{
char kanaa[] = "あい";
char hiragana[] = "ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをん ゝゞ";
char katakana[] = "ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶヽヾ";
int i,j;
printf("sizeof \"%s\": %d\n", &kanaa, sizeof(kanaa));
for( i=0 ; i<=sizeof(kanaa) ; i++){
printf(" , %x", kanaa[i]);
}
printf("\n\n");
printf("%s\n", &hiragana);
printf("%s\n", &katakana);
if(sizeof(hiragana) == sizeof(katakana)){
for( i=0 ; i<sizeof(hiragana) ; i+=3){
printf("\"%c%c%c\" - \"%c%c%c\" = ",
hiragana[i],
hiragana[i+1],
hiragana[i+2],
katakana[i],
katakana[i+1],
katakana[i+2]);
for( j=0 ; j<=2 ; j++){
printf(" %x ,", katakana[i+j] - hiragana[i+j] );
}
printf("\n");
}
}else{
printf("invalid compare string.\n");
}
return 0;
}
実行結果$ ./a.out sizeof "あい": 7 , ffffffe3 , ffffff81 , ffffff82 , ffffffe3 , ffffff81 , ffffff84 , 0 , 0 ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをん ゝゞ ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶヽヾ "ぁ" - "ァ" = 0 , 1 , 20 , "あ" - "ア" = 0 , 1 , 20 , "ぃ" - "ィ" = 0 , 1 , 20 , "い" - "イ" = 0 , 1 , 20 , "ぅ" - "ゥ" = 0 , 1 , 20 , "う" - "ウ" = 0 , 1 , 20 , "ぇ" - "ェ" = 0 , 1 , 20 , "え" - "エ" = 0 , 1 , 20 , "ぉ" - "ォ" = 0 , 1 , 20 , "お" - "オ" = 0 , 1 , 20 , "か" - "カ" = 0 , 1 , 20 , "が" - "ガ" = 0 , 1 , 20 , "き" - "キ" = 0 , 1 , 20 , "ぎ" - "ギ" = 0 , 1 , 20 , "く" - "ク" = 0 , 1 , 20 , "ぐ" - "グ" = 0 , 1 , 20 , "け" - "ケ" = 0 , 1 , 20 , "げ" - "ゲ" = 0 , 1 , 20 , "こ" - "コ" = 0 , 1 , 20 , "ご" - "ゴ" = 0 , 1 , 20 , "さ" - "サ" = 0 , 1 , 20 , "ざ" - "ザ" = 0 , 1 , 20 , "し" - "シ" = 0 , 1 , 20 , "じ" - "ジ" = 0 , 1 , 20 , "す" - "ス" = 0 , 1 , 20 , "ず" - "ズ" = 0 , 1 , 20 , "せ" - "セ" = 0 , 1 , 20 , "ぜ" - "ゼ" = 0 , 1 , 20 , "そ" - "ソ" = 0 , 1 , 20 , "ぞ" - "ゾ" = 0 , 1 , 20 , "た" - "タ" = 0 , 1 , 20 , "だ" - "ダ" = 0 , 2 , ffffffe0 , "ち" - "チ" = 0 , 2 , ffffffe0 , "ぢ" - "ヂ" = 0 , 2 , ffffffe0 , "っ" - "ッ" = 0 , 2 , ffffffe0 , "つ" - "ツ" = 0 , 2 , ffffffe0 , "づ" - "ヅ" = 0 , 2 , ffffffe0 , "て" - "テ" = 0 , 2 , ffffffe0 , "で" - "デ" = 0 , 2 , ffffffe0 , "と" - "ト" = 0 , 2 , ffffffe0 , "ど" - "ド" = 0 , 2 , ffffffe0 , "な" - "ナ" = 0 , 2 , ffffffe0 , "に" - "ニ" = 0 , 2 , ffffffe0 , "ぬ" - "ヌ" = 0 , 2 , ffffffe0 , "ね" - "ネ" = 0 , 2 , ffffffe0 , "の" - "ノ" = 0 , 2 , ffffffe0 , "は" - "ハ" = 0 , 2 , ffffffe0 , "ば" - "バ" = 0 , 2 , ffffffe0 , "ぱ" - "パ" = 0 , 2 , ffffffe0 , "ひ" - "ヒ" = 0 , 2 , ffffffe0 , "び" - "ビ" = 0 , 2 , ffffffe0 , "ぴ" - "ピ" = 0 , 2 , ffffffe0 , "ふ" - "フ" = 0 , 2 , ffffffe0 , "ぶ" - "ブ" = 0 , 2 , ffffffe0 , "ぷ" - "プ" = 0 , 2 , ffffffe0 , "へ" - "ヘ" = 0 , 2 , ffffffe0 , "べ" - "ベ" = 0 , 2 , ffffffe0 , "ぺ" - "ペ" = 0 , 2 , ffffffe0 , "ほ" - "ホ" = 0 , 2 , ffffffe0 , "ぼ" - "ボ" = 0 , 2 , ffffffe0 , "ぽ" - "ポ" = 0 , 2 , ffffffe0 , "ま" - "マ" = 0 , 2 , ffffffe0 , "み" - "ミ" = 0 , 2 , ffffffe0 , "む" - "ム" = 0 , 1 , 20 , "め" - "メ" = 0 , 1 , 20 , "も" - "モ" = 0 , 1 , 20 , "ゃ" - "ャ" = 0 , 1 , 20 , "や" - "ヤ" = 0 , 1 , 20 , "ゅ" - "ュ" = 0 , 1 , 20 , "ゆ" - "ユ" = 0 , 1 , 20 , "ょ" - "ョ" = 0 , 1 , 20 , "よ" - "ヨ" = 0 , 1 , 20 , "ら" - "ラ" = 0 , 1 , 20 , "り" - "リ" = 0 , 1 , 20 , "る" - "ル" = 0 , 1 , 20 , "れ" - "レ" = 0 , 1 , 20 , "ろ" - "ロ" = 0 , 1 , 20 , "ゎ" - "ヮ" = 0 , 1 , 20 , "わ" - "ワ" = 0 , 1 , 20 , "ゐ" - "ヰ" = 0 , 1 , 20 , "ゑ" - "ヱ" = 0 , 1 , 20 , "を" - "ヲ" = 0 , 1 , 20 , "ん" - "ン" = 0 , 1 , 20 , " " - "ヴ" = 0 , 3 , 34 , " " - "ヵ" = 0 , 3 , 35 , " " - "ヶ" = 0 , 3 , 36 , "ゝ" - "ヽ" = 0 , 1 , 20 , "ゞ" - "ヾ" = 0 , 1 , 20 , "" - "?" = 0 , ffffffce , ffffff80 , |