2017-01-27 4 views
-1

У меня есть эти строки в моей программе C:C - Еореп текстовый файл после того, как здание - 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); 
} 

После создания этого кода OPKG в OpenWRT (с 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 (комментарий, 100, stdin); вместо получения (комментарий); потому что gets устарел –

Смежные вопросы