ファイルを読み書きするには、Unix 環境の C 言語でファイル ポインタが必要です。ファイル名とパスは知っていますが、その名前とパスを使用してファイル ポインターを取得する方法を教えてください。
質問する
1534 次
4 に答える
3
#include <stdio.h>
FILE * pFile;
pFile = fopen ("myfile.txt","w");
于 2013-08-26T08:43:05.790 に答える
0
ssmithstone からの投稿によると:
#include <stdio.h>
FILE * pFile;
/* open file and check if was successful */
if ((pFile = fopen("myfile.txt", "w")) == NULL)
{
/* couldn't open file; do some error handling if u want */
}
else
{
/* do s.th. */
/* close file */
fclose(pFile);
}
この場合w
、書くことを意味します。他のオプションについては、Yu Hao が投稿したリンクを確認してください。
于 2013-08-26T08:51:06.043 に答える
0
あなたは C プログラミングの初心者のようです。私はC
あなたのためにプログラムを書きました。あなたはそれを分析することができます。きっとあなたにとって役立つと思います。
#define size 50
#include <stdio.h>
int main()
{
char name[size];
FILE *file;
file = fopen("your_file.txt","w");
printf("Please enter your first name\n");
scanf("%s",name);
fprintf(file,"%s",name);
fclose(file);
return 0;
}
詳細:
- 7 行目では、2 番目のパラメーター
w
がファイル オープン モードとして使用されます (書き込み権限あり)。 - ファイル ポインタは、「 your_file.txt 」という名前のファイルを作成/開くために使用されます。
- function
fprintf()
は function と同じprintf()
ですが、コンソールではなくファイルに書き込みます。 - 最後に、ファイル書き込み操作を閉じる必要があるため、
fclose()
関数を使用します
アップデート:
パスを指定するには、たとえば filename.fileextension を使用してファイル パスを記述できます。次のように記述できます。
file = fopen("/home/depthgr8/Desktop/your_file.txt","w");
これにより、パスが存在する場合、指定されたパスに your_file.txt が作成されます。それ以外の場合は、ランタイム例外がスローされます - セグメンテーション エラー (コア ダンプ)
于 2013-08-26T10:01:35.283 に答える