while( rd = read(fd1, buf, 512) != 0)
{
len += rd;
if(readed < 0)
perror("read: ");
}
Страницы MAN указывают, что read() возвращает количество прочитанных байтов, но в моем случае этот код возвращает количество блоков (зависит от третьего аргумента) или количество итераций. например, у меня есть файл с 36 символами, и этот код возвращает 1, когда все символы обычно читаются, если я изменяю 512 на 4, он вернет 9 и так далее. Пожалуйста, исправьте меня, и этот код возвращает количество байтов, которые считывают с 512 блоков размеромread() return «неправильное» значение
Да, спасибо всем. Я забыл, что обработка операций справа налево и! = Имеют более высокий приоритет, чем = – Ivan