2017-01-27 9 views
-1

は、私は私のCプログラムでこれらの行を持っている:OpenWrtの中OPKGにこのコードを構築した後C - 構築後のfopenテキストファイル - OpenWrtの - opkg

int main(int argc, char **argv) {  
    int i=0, p=0; 

    FILE* fp; 
    fp = fopen("jacina.txt", "w+"); 
    fscanf (fp, "%d", &i); 

    if (ftruncate(fp, 0) == -1) { 
    perror("Could not truncate") 
    }; 

    p = i+10; 
    fprintf(fp, "%d", p); 
} 

(Ubuntuのから)、私は読み取りおよび書き込みが可能かこのテキストファイルは、このOPKGがあるディスクの任意の場所にありますか?

+0

あなたのコードは意味がありません。あなたはデータの書き込み/追加のためにファイルを開き、その後にファイルデータを読み込む 'fscanf'を... – LPs

+0

はい、それは私のコードの一部です。 – banki

+0

opkgで何をやっていますか? –

答えて

0

あなたのコードは意味をなさない。ユーザーが指定した入力をファイルに書き込むには

ファイルを最初に作成します。ユーザーからの入力(任意の文字列)をファイルディスクリプタ(fp)の助けを借りてファイルに書き込み、すべてのバッファがフラッシュされるようにファイルを閉じます。あまりに

FILE *fp; 
char comment[100] = {0}; 
fp=fopen("tempfile.txt","w"); 

if (fp == NULL) 
{ 
    printf("Error opening file!\n"); 
    exit(1); 
} 

printf("Enter String: "); 
gets(comment); 
fwrite(comment, sizeof(comment), 1, fp) ; 

fclose(fp); 

関数fprintf()は、ファイルにデータを書き込むために代わりに使用することができます。 ファイルからの読み込みと同様に、fgets()またはfread()を使用して、ファイルの内容をバッファに格納し、ファイルの内容を表示することができます。それが役に立てば幸い。

+0

fgets(comment、100、stdin);を使用します。 gets(コメント)の代わりに。 getsが推奨されないためです –

関連する問題