Описание тега unistd.h

NoneUnistd.h - это заголовочные файлы C/C++, необходимые для обеспечения доступа к операционным системам POSIX.
1 ответ

Почему при вызове функции crypt() из unistd.h для errno устанавливается значение ENOENT?

Я написал и запустил следующий код: #define _XOPEN_SOURCE #include <iostream> #include <unistd.h> int main() { std::cout << "errno = " << errno << std::endl; std::cout << crypt("sometext", "ab") << std::endl…
17 мар '18 в 19:26
2 ответа

Что я делаю не так с read() и write()?

Я пытаюсь установить связь между модулем ядра и программой уровня пользователя. Я получил предложение раньше использовать fdopen() который работал хорошо, но я обнаружил, что мне нужно использовать open(), read() а также write() вместо. Я прочитал с…
18 мар '16 в 21:27
0 ответов

Низкий уровень ввода-вывода с Crypt

Я пытаюсь сравнить зашифрованную строку, взятую из каждой строки файла, с AAAA-ZZZZ, пока не найдет совпадение пароля. Я гарантирую, что пароль пользователя состоит из 4 символов. То, что я пытаюсь сделать, это взять файл с помощью LowLevel IO и выв…
02 июн '15 в 22:40
1 ответ

C: невозможно распечатать из файла

Итак, у меня есть этот проект, в котором мне нужно открыть файл и распечатать содержимое на C, но я должен использовать системные вызовы Unix. Однако я не понимаю, почему ничего не печатает. Я пытаюсь запустить код, но он, кажется, сразу переходит к…
13 окт '15 в 21:54
1 ответ

В чем разница между fsync и syncfs?

В чем разница между fsync и syncfs? int syncfs(int fd); int fsync(int fd); Страница man для fync сообщает следующее: fsync () передает ("сбрасывает") все измененные данные в ядре (то есть, измененные страницы буферного кэша) файла, указанного дескри…
09 янв '18 в 15:45
2 ответа

atof coredump с getopt

Я пишу приложение на C++, которое конвертирует фаренгейты в градусы Цельсия и Кельвина, а кельвины в градусы Цельсия и Фаренгейта и т. Д. Поскольку писать здесь интерактивное приложение глупо, я решил ознакомиться с функцией getopt в unistd.h. Форма…
10 авг '17 в 09:07
1 ответ

Функция Sleep() неправильно синхронизируется в C

Я кодировал некоторые простые вещи, такие как операторы печати, но я хотел, чтобы мой процессор не работал, чтобы не было слишком много операторов печати одновременно. Я использовал библиотеку unistd.h и использовал функцию sleep(). Проблема, с кото…
14 сен '16 в 18:26
0 ответов

Поведение чтения из unistd.h

У меня есть код, который читает из дескриптора файла с read от unistd.h, Я получаю странное поведение, где нить сталкивается read выходы, и я не могу найти ничего в документации, которая могла бы объяснить это. Кто-нибудь знает, почему это произойде…
10 окт '13 в 17:54
2 ответа

Домашняя работа dup2 функция

У меня вопрос по домашнему заданию со следующим кодом: dup2(fd,0); dup2(fd,1); dup2(fd,2); if(fd>2) close(fd); Это говорит, "Чтобы понять, зачем нужен тест if, предположим, что fd равно 1, и нарисуйте картину того, что происходит с тремя записями…
29 ноя '11 в 06:14
1 ответ

Код ошибки в C

У меня ошибка с моим кодом ниже #include <stdio.h> #include <stdlib.h> #include <unistd.h> int main() { int i, status; pid_t child; child=fork(); if(child == 0){ for(i=0; i<10; i++){ printf("\tChild PID = %d\n", getpid()); print…
07 окт '12 в 17:32
1 ответ

unistd: нет такого файла или каталога

У меня есть следующее test.cpp файл: #include <unistd> int main() { return 0; } Я просто хочу скомпилировать это, но у меня все еще есть следующее: $ g++ test.cpp test.cpp:1:18: fatal error: unistd: No such file or directory #include <unist…
11 дек '16 в 21:25
3 ответа

Как выбрать один из вариантов?

Я экспериментирую с POSIX getopt функция и столкнулся с некоторой проблемой. Я хочу предоставить режим (чтение или запись) для приложения через аргументы командной строки. Поэтому я попытался сделать что-то вроде этого: enum mode{ read, write }; enu…
02 дек '18 в 06:03
4 ответа

Почему этот код зависает, когда я пытаюсь использовать функцию записи (man 2 write)?

Я пытаюсь написать тест, в котором некоторые данные должны быть прочитаны из файлового дескриптора, поэтому я использую функции dup и pipe для проверки этого. int main() { char *line; int out; int p[2]; char *str; int len = 50; str = (char *)malloc(…
18 янв '19 в 15:12
2 ответа

Неявное объявление функции тампона

РЕДАКТИРОВАТЬ: предупреждение в первом абзаце было из-за того, что я читал старый журнал из компилятора (перед включением unistd.h, извините за промах, вторая проблема все еще сохраняется) У меня есть код, который использует функцию c unlink (объявл…
15 ноя '13 в 17:12
0 ответов

Могут ли отдельные, разветвленные процессы совместно получать доступ к разделяемым динамически выделяемым указателям, памяти?

Я пытаюсь распараллелить сложение двух простых матриц 4х4. Дочерний процесс добавляет только нечетные строки, а родители добавляют четные. Тем не менее, я не могу заставить процессы работать с общей памятью указателя, и вывод всегда дается пополам, …
21 авг '17 в 20:44
1 ответ

Программа на C для Linux для чтения файлового дескриптора, переданного в качестве терминального аргумента

Я изучал различные дискуссии о том, как получить дескрипторы открытого файла для текущего процесса в Linux из программы ac, но не смог найти следующий пример: ./sample 4</some_file 5<some_other_file Есть ли способ получить эти файловые дескрип…
19 мар '18 в 20:45
2 ответа

Стандартное чтение POSIX, затененное методом read с другой сигнатурой

У меня есть класс C++ File с функцией чтения, который должен считывать все содержимое файла (как это делает Python) в буфер. Однако когда я попытался вызвать функцию чтения из unistd.h, я получил: file.cpp: 21: ошибка: не найдена соответствующая фун…
18 июл '09 в 19:07
1 ответ

Что я должен делать, когда запись возвращает меньший размер?

Я пишу обертку вокруг общих файловых операций и не знаю, как справиться со случаем, когда write возвращает меньший размер, чем предоставленный. Страница man для write гласит: Количество записанных байтов может быть меньше количества, если, например,…
06 фев '14 в 21:13
1 ответ

Трубопровод к unistd.h читать segfault

Я пытаюсь передать в чтение, но после второго ввода он продолжает работать с ошибками. Что я делаю неправильно? Заранее спасибо. $ ./read < <(python -c 'print "BBA\nBBADD\n",') Please enter your first name: buf= BBA BBA Please enter your last …
08 ноя '12 в 14:42
1 ответ

Невозможно прочитать содержимое файла в буфер с помощью read()

Ниже приведен пример кода, скомпилированного с помощью компилятора GNU (команда g++) в ОС Ubuntu 16.04: #include<iostream> #include<unistd.h> #include<fcntl.h> #include <errno.h> int main() { char* pBuffer; char* storedfilepa…
08 ноя '17 в 09:04