fputc не записывает символы в файл? - PullRequest
0 голосов
/ 28 сентября 2019

Запись программы, которая записывает отдельные символы в файл, используя fputc, но символы не записывают в файл.Я что-то упустил?

#include <stdio.h>
#include <stdlib.h>

int main (void)
{

    FILE *fpnt;
    char mychar;
    fpnt = fopen("/Users/name/Desktop/data.txt", "w");

    if(fpnt == NULL)
    {
    printf("Unable to open the file...");
    exit(0);
    }
    while((mychar = getchar()) != EOF)
    {
    fputc(mychar, fpnt);
    }
    fclose(fpnt);
}

1 Ответ

0 голосов
/ 28 сентября 2019

Попробуйте этот код:

#include <fcntl.h>
#include <stdlib.h>
#include <stdio.h>

void ft_putchar_fd(char c, int fd)
{
    write(fd, &c, 1);
 }

int main (void)
{

int fd;
char mychar;
fd = open("/Users/name/Desktop/data.txt", O_RDWR);

if(fd == -1)
{
printf("Unable to open the file...");
exit(0);
}
while((mychar = getchar()) != EOF)
{
    ft_putchar_fd(mychar, fd);
}
close(fd);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...