The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Немогу разобраться с pipe и fork()"
Отправлено phpcoder, 05-Сен-08 14:50 
Где хедеры stdio.h. и stdlib.h ?

>int main()

В Си если ф-ция не принимает параметров, лучше указывать void, т.е. в вашем случае правильнее будет

int main(void)

>{
>char buf[256] = "null";
>FILE *oms = popen("patch/OMStip T75 -done wan0","r");
>
>if(!oms)
> {
>  printf("Error read file\n");

Сообщение об ошибках всё же лучше направлять в stderr. Ну и оно должно быть более читабельным, чем в вашем случае.

>  return EXIT_FAILURE;
> }
> else
> {
>  printf("Read run\n");
>  fread(buf,1,256,oms);

У вас размер буфера 256, как вы собрались туда прочитать 256 символов? А как же нулевой символ? Вы так можете получить ошибку off-by-one и выход за границы массива.

>  printf("%s",buf);
>  fclose(oms);

fclose() используется для закрытия файловых дескрипторов, открытых с помощью fopen(). В вашем случае нужно pclose()

> }
>

Здесь должен быть оператор return EXIT_SUCCESS;

>}
>
>но приложение отрабатывет со второго раза о_О, и после исполнения теряется фокус
>у консоли
>в нее ничего нельзя ввести О_О как это побороть?

У меня ваш пример (после некоторых правок) отрабатывает с первого раза и никакой фокус не теряется.

 

Ваше сообщение
Имя*:
EMail:
Для отправки новых сообщений в текущей нити на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру