C言語ユーザーからひらがな入力
-
ひらがな入力
C言語ユーザーからひらがな入力
C言語で、キーボードから入力したひらがなは、ファイルから読み込んだひらがなと、
等しいかを比べたいものです。
gcc -v と入力、gcc version 4.8.1 (GCC)と表示。
gcc --input-charsetと入力、
gcc: error: unrecognized command line option '--input-charset'と表示。
gcc --input-charsetを使い。日本語を読み込んで比較する方法を、教えてください。
Re: C言語ユーザーからひらがな入力
のように、input-charsetの後に文字コードを書いてください。
日本語でも英語でもロシア語でも、単純にやるなら素直にfgetsで読み込んでstrcmpで比較すればいいと思います。
参考(コマンドの実行例)
日本語でも英語でもロシア語でも、単純にやるなら素直にfgetsで読み込んでstrcmpで比較すればいいと思います。
参考(コマンドの実行例)
YUKI.N>gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=c:/mingw4.7.2/bin/../libexec/gcc/mingw32/4.7.2/lto-wrapper.e
xe
Target: mingw32
Configured with: ../gcc-4.7.2/configure --enable-languages=c,c++,ada,fortran,obj
c,obj-c++ --disable-sjlj-exceptions --with-dwarf2 --enable-shared --enable-libgo
mp --disable-win32-registry --enable-libstdcxx-debug --disable-build-poststage1-
with-cxx --enable-version-specific-runtime-libs --build=mingw32 --prefix=/mingw
Thread model: win32
gcc version 4.7.2 (GCC)
YUKI.N>gcc --input-charset
gcc: error: unrecognized command line option '--input-charset'
gcc: fatal error: no input files
compilation terminated.
YUKI.N>gcc --input-charset=cp932
gcc: fatal error: no input files
compilation terminated.
YUKI.N>複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
-
ひらがな入力
Re: C言語ユーザーからひらがな入力
hello.cはファイル名
gcc --input-charset=cp.932 hello.c -o hello
cc1.exe: error: conversion from cp.932 to UTF-8 not supported by iconv
とエラーが表示されました。解消する方法を教えてください。
ファイルから読んだ、ひらがな一文字表示や比較したいです。
お返事お願いします。
-
ひらがな入力
Re: C言語ユーザーからひらがな入力
hello.cはファイル名
gcc --input-charset=cp.932 hello.c -o hello
cc1.exe: error: conversion from cp.932 to UTF-8 not supported by iconv
とエラーが表示されました。解消する方法を教えてください。
ファイルから読んだ、ひらがな一文字表示や比較したいです。
お返事お願いします。
Re: C言語ユーザーからひらがな入力
文字コードの名前が違います。
cp.932ではなくてcp932です。
ところで、--input-charset=cp932を指定すると、
ソースコードの文字コードがShift_JIS(厳密には違うらしいが)とみなされます。
それであっていますか?UTF-8などではないですか?
cp.932ではなくてcp932です。
ところで、--input-charset=cp932を指定すると、
ソースコードの文字コードがShift_JIS(厳密には違うらしいが)とみなされます。
それであっていますか?UTF-8などではないですか?
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: C言語ユーザーからひらがな入力
読み込むファイルの文字コードは1個に決めつけていいですか?
それとも色々な文字コードのファイルを読み込ませたいですか?
それとも色々な文字コードのファイルを読み込ませたいですか?
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
-
ひらがな入力
Re: C言語ユーザーからひらがな入力
プログラムを載せます。
test.c
gcc --input-charset=cp932 test.c -o test
を実行すると、printf("ひらがな入力")は縺イ繧峨′縺ェ蜈・蜉
と表示されます。
gcc test.c -o testではひらがな入力の表示はされました。
printf("%c",b)やprintf("%c",b)は、キーボードから入力後、
宸・「Dゥu・犱I輹Qクと表示されます。
文字化けしない、文字コード一つを読み込むファイルに指定したいです。
お返事お願いします。
test.c
#include<stdio.h>
# define DICT "a8.txt"
int main (void){
int i=0;
char input[30];
char b[20];
FILE *fd;
fd=fopen(DICT,"r");
fgets (input, sizeof(input), fd);
printf("ひらがな入力");
scanf("%s",b);
for(i=0;i<20;i++){
printf("%c",b[i]);
printf("%c",input[i]);
}
return(0); }を実行すると、printf("ひらがな入力")は縺イ繧峨′縺ェ蜈・蜉
と表示されます。
gcc test.c -o testではひらがな入力の表示はされました。
printf("%c",b)やprintf("%c",b)は、キーボードから入力後、
宸・「Dゥu・犱I輹Qクと表示されます。
文字化けしない、文字コード一つを読み込むファイルに指定したいです。
お返事お願いします。
Re: C言語ユーザーからひらがな入力
input-charsetのみを指定すると実行ファイルにはUTF-8で出力されるので、
Shift_JISで出力したいなら--exec-charset=cp932も指定する必要があります。
また、ひらがな(などの日本語の文字)は複数バイトで表されるため、
出力するときはそのバイト数(Shift_JISなら2バイト)を一気に出力しないといけません。
このプログラムではbとinputを混ぜてしまっているため、正しく出力されないようです。
Shift_JISで出力したいなら--exec-charset=cp932も指定する必要があります。
また、ひらがな(などの日本語の文字)は複数バイトで表されるため、
出力するときはそのバイト数(Shift_JISなら2バイト)を一気に出力しないといけません。
このプログラムではbとinputを混ぜてしまっているため、正しく出力されないようです。
意味がよくわからないので、解説していただけると助かります。ひらがな入力 さんが書きました:文字化けしない、文字コード一つを読み込むファイルに指定したいです。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
-
ひらがな入力
Re: C言語ユーザーからひらがな入力
お返事ありがとうございました。
gcc --exec-charset=cp932 --input-charset=cp932 test.c -o test を実行。
printf("%c",b);
printf("%c",input);はファイルやキーボードから、ひらがな入力を受けた変数。
bb「「bゥゥb澵b鉗bククは実行結果でした。
ファイルや、キーボードから、ひらがななどを文字化けせず読み込み、一文字づつ表示、比較をしたいです。
わかりづらい表現ですいません。
gcc --exec-charset=cp932 --input-charset=cp932 test.c -o test を実行。
printf("%c",b);
printf("%c",input);はファイルやキーボードから、ひらがな入力を受けた変数。
bb「「bゥゥb澵b鉗bククは実行結果でした。
ファイルや、キーボードから、ひらがななどを文字化けせず読み込み、一文字づつ表示、比較をしたいです。
わかりづらい表現ですいません。
Re: C言語ユーザーからひらがな入力
もしかして日本語のネイティブではない方でしょうか?
(少なくとも私には)英語で質問してもいいですよ。
※1文字以上(?)日本語の文字を含めないと投稿できないです
「文字コードを読み込むファイルに指定する」という操作が具体的に何を表しているかを教えてください。
[hr]
You may ask your questions in English.
(You must include Japanese characters in your posts.)
Please tell me what you mean by 「文字コードを読み込むファイルに指定する」
in concrete terms.
(少なくとも私には)英語で質問してもいいですよ。
※1文字以上(?)日本語の文字を含めないと投稿できないです
「文字コードを読み込むファイルに指定する」という操作が具体的に何を表しているかを教えてください。
[hr]
You may ask your questions in English.
(You must include Japanese characters in your posts.)
Please tell me what you mean by 「文字コードを読み込むファイルに指定する」
in concrete terms.
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
-
ひらがな入力
Re: C言語ユーザーからひらがな入力
お返事ありがとうございます。
文字コードを読み込むファイルに指定するは、
ファイルから、読み込んだひらがなの文字列の、一文字を表示や比較したいです。
文字コードを読み込むファイルに指定するは、
事です。みけCAT さんが書きました:読み込むファイルの文字コードは1個に決めつける。
ファイルから、読み込んだひらがなの文字列の、一文字を表示や比較したいです。
Re: C言語ユーザーからひらがな入力
では、その使用する文字コードを指定してください。ひらがな入力 さんが書きました:文字コードを読み込むファイルに指定するは、事です。みけCAT さんが書きました:読み込むファイルの文字コードは1個に決めつける。
それに合わせた判定法を提案しようと思います。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)