
No.5
- 回答日時:
格納したあとに分割するという考え方でどうでしょうか?
int i;
char *p[20];
i=0;
p[i] = strtok(line, ",");
while(p[i]!=NULL){
p[i] = strtok(NULL, ",");
i++
}
No.4
- 回答日時:
こんにちは、ふたたび。
VCは、離れて久しいぞな(^^;
さて、日本語(1ワード=2バイト)が入ると言う事ですね。
すると、各Cコンパイラ(・・・というか、.hに関数が準備されていると思います)ANSI C において、日本語処理は定められていないと思いました。(ウチ最新のコンパイラじゃないので、情報が古いかも・・・)
コンパイラ次第なのですがVC++5.0(Visual studio97)では、 _mbsnicmp
という関数がマルチバイトの文字比較となっているようですね。
<mbstring.h>
を include してください。
※ただし、実際に組んだ(使用した)わけではないので、この関数がお使いの環境で可能かどうか怪しいところではあります。
ちなみに、このバージョンのこのコンパイラ以外では、全く違う名前の関数で、この機能を実現しているかもしれません。
コンパイラの種類、バージョンを補足いただければ、分かる方が居るかもしれません。
No.3
- 回答日時:
こんにちわ
「1文字ずつ参照して・・・」の部分は下の方のヒント(回答?)で良いと思います。
で、もう一つの方法(のヒント)を。
「ある文字で区切られたデータを分けて取得」の部分ですが、
「strchr」と言う関数と「strrchr」と言う関数があります。
ここで詳細や使用方法は説明しませんが(ヘルプを見てくださいね)、
これを上手く使うと一つ一つ調べる手間は省けます。
頑張ってください。
No.2
- 回答日時:
char line[20];
としてるのですよね。
1文字ずつでしたら、line[0]、line[1]、line[2]・・・line[19]と
いった感じで(1)文字づつ参照できます。
気をつけなければならないのは、line[n]が0x00 の場合、そこで文字は最後です。
以降のデータは、内容が保証されませんので注意してください。
もうひとつ、ヒントとして、カンマ区切りのデータでしたら、
sscanfといった関数も便利かもしれません。
がんばってください。では。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
DLLファイルの逆コンパイラにつ...
-
C++Builder → Visual C++ 移植...
-
unsigned long long 型のフォー...
-
cobolで実行環境って何ですか?
-
XPで動くコンパイラ
-
cudaのnvccはmingwやgccでも使...
-
組み込みソフト。ROM領域にデータ
-
FORTRANのおすすめコンパイラ
-
C言語の規格
-
COBOL計算式の中間ワーク桁数に...
-
最初に使う変数のゼロクリアに...
-
Win32のIME制御について
-
COBOLの論理演算子について質問...
-
PICでのI2C通信でのマスタ、ス...
-
コンパイラによって出力される...
-
python エラー
-
<unistd.h>をVisualStudioでつ...
-
エクセルのエラーメッセージ「4...
-
” OS ビルド ” の意味が分か...
-
コンパイルできません。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
DLLファイルの逆コンパイラにつ...
-
ソフトの開発言語を調べる方法
-
unsigned long long 型のフォー...
-
printfなど、標準関数のソース...
-
C++でデスクトップGUIアプリ開...
-
組み込みソフト。ROM領域にデータ
-
COBOLのALPHABET...
-
リリースモードとデバッグモー...
-
C++Builder → Visual C++ 移植...
-
COBOLの論理演算子について質問...
-
<conio.h>?
-
パーサとコンパイラの違いって?
-
変数の内容がコロコロ変わる、...
-
HP-UXのプログラムをSolaris、R...
-
for文内での変数定義
-
C++DLLの明示的リンクに関して
-
AIXとCOBOLについて
-
COBOL計算式の中間ワーク桁数に...
-
volatile修飾子について
-
サイクルカウントの方法
おすすめ情報