Top.Mail.Ru
Ответы

Подскажите, пожалуйста, по функции write в языке си

Подскажите, пожалуйста, что означает последний параметр функции write и откуда его значение берётся ?

По дате
По Рейтингу
Аватар пользователя
Новичок

count? сколько тебе нужно столько и указываешь, но не более размера буфера.

Аватар пользователя
Просветленный

Последний параметр в функции write - это количество байт, которые ты хочешь записать в файловый вывод.
Можешь указывать это значение от балды, желательно не более размера выводимого буфера (массива) в байтах.
Например:
#include<stdio.h>

int main()
{
char buf[10]="text";
//вывод на консоль - text
write(1,buf,sizeof(buf));
printf("\n");
//вывод на консоль - te
write(1,buf,2);
return 0;
}

Аватар пользователя
Гений

int write(int handle, void *buf, int count)
Функция ищет в оперативке байт под порядковым номером buf (указатель по сути своей - это переменная, которая хранит целое число - порядковый номер некоторого байта в оперативной памяти) и записывает в файл count подряд идущих байт, начиная с этого байта.

Аватар пользователя
Мастер

Там unistd.h вместо stdio.h.