C 言語演習プログラム -- 第 5 日目
ファイルの入出力プログラム!業務で使える .exe ファイルを作れるかなー使えないだろうな。
ウワサに聞いていた「ポインタ」の話が5日目にようやく出てきました。
ポインタの話に入る前に一つ勉強に。
exit(0); // 正常終了 exit(1); // 以上終了
なんですか?!エラー処理の基本もメモメモ。
- エラーの内容を出力表示する
- プログラムをその場で強制終了する。(exit(1))
- ファイル操作に使用した関数
#include <stdio.h> // ファイル入出力用 #include <stdlib.h> // exit関数用 FILE *fp; // ファイルポインタの宣言 fp = fopen(ファイルパス, オープンモード); // r :読み込み専用 // w :書き出し専用 // a :追加書き出し専用 // rb:バイナリモードで読み込み専用 // wb:バイナリモードで書き出し専用 fclose(ファイルポインタ); // 開けたら閉じる。 fgetc(ファイルポインタ); // 1文字ずつ読み込む fgets(変数,読み込み文字数,ファイルポインタ); // ポインタ位置から読み込み文字数分の文字列を変数に格納する(最後に「\0」) fputc(書き出す文字, ファイルポインタ); // 1文字ずつ書き出す。ポインタは次の文字に移動する fputs(書き出す文字列, ファイルポインタ); // 文字列を書き出す。文字列の最後には「\0」が入るけど、出力はされない。 // 書き出しに失敗すると負の値が返る
突然 gets() 関数が出てきたんですが、scanf() とどう違うのかよくわかりませんでした。
- ファイル内文字列検索プログラムで仕様
/* 以下のような書き方を「マクロ」と呼ぶ */ #define FALSE 0 // 文字列"FALSE" を "0" に置き換える #define TRUE 1 // 文字列"TRUE" を "1" に置き換える
文字列置換がわかったようなわからないような…後でもう一度調べるー