オープンモード "a+" の追加書き込み機能について考察してみよう

🌻   🌻   🌻


次は


オープンモード "a+" の追加書き込み機能について


考察してみようよ\(^o^)/



ソーラー「いいね 順調だね


そのためにはまず


次のプログラムを実行してみようかな」


#pragma warning(disable: 4996)

#include <stdio.h>

int main (void){


FILE *fp;

fp=fopen("TEN-GOGO-C-language.txt","w");

if(fp==NULL){

printf("ファイルオープンに失敗しましたよ~ん\n");

return -1;}

else printf("Hello!ファイルオープンに成功しましたよ~ん\n");


fprintf(fp,"%d\n",1);

fprintf(fp,"%d\n",2);

fprintf(fp,"%d\n",3);

fprintf(fp,"%d\n",4);

fprintf(fp,"%d\n",5);


fclose(fp);

return 0;

}


コンパイル結果


Hello!ファイルオープンに成功しましたよ~ん


ソーラー「このように


ハードディスク内のTEN-GOGO-C-language.txtファイルに


数値

1

2

3

4

5


をかきこんでみます


そして


ハードディスク内のTEN-GOGO-C-language.txtファイルに


数値

1

2

3

4

5

が書き込まれた状態で


オープンモード"a+"


の追加書き込み機能つかって


さらに

数値

6

7

8

9

10


かきこんでみます。


そのプログラムは以下のようになります


#pragma warning(disable: 4996)

#include <stdio.h>

int main (void){


FILE *fp;

fp=fopen("TEN-GOGO-C-language.txt","a+");

if(fp==NULL){

printf("ファイルオープンに失敗しましたよ~ん\n");

return -1;}

else printf("Hello!ファイルオープンに成功しましたよ~ん\n");


fprintf(fp,"%d\n",6);

fprintf(fp,"%d\n",7);

fprintf(fp,"%d\n",8);

fprintf(fp,"%d\n",9);

fprintf(fp,"%d\n",10);


fclose(fp);

return 0;

}


コンパイル結果


(EAZY IDECの場合)

(Visual Studioの場合)


Hello!ファイルオープンに成功しましたよ~ん


きちんと


6

7

8

9

10



TEN-GOGO-C-language.txtファイルに追加で書き込まれたかどうかを


確認するために


PC内検索で


TEN-GOGO-C-language.txtファイルを探し出し


中身を確認すると


数値

1

2

3

4

5

6

7

8

9

10


と保存されているのがわかります


まえにTEN-GOGO-C-language.txtファイルに格納されていた


数値

1

2

3

4

5

6

7

8

9

10

が追加されて

がファイルにかきこまれたというわけです



🌻


これは 


オープンモード"a"のときといっしょで


オープンモード"a+"も追加書き込み機能をもつんだね




  • Twitterで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます