The OpenNET Project / Index page

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

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Вызов system() возвращает неверный код завершения?"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"Вызов system() возвращает неверный код завершения?"
Сообщение от Филипп emailИскать по авторуВ закладки on 29-Апр-03, 16:35  (MSK)
Функция system() возвращает неверный код завершения. В чем дело? Помогите советом, пожалуйста. Система - Red Hat Linux 6.2, ядро 2.4.5. glibc 2.0.

Пример:

$ cat sys.c
#include <stdlib.h>
#include <stdio.h>

int main (){

int j;

j=system("./ret");      
printf("sys - %d\n",j);
exit(j);
}

$ cat ret.c
#include <stdio.h>

int main(){

int i;

scanf("%d",&i);
printf("%d\n",i);
exit(i);
}

Результаты парадоксальны:

$ ./sys
2
2
sys - 512

$ ./sys
4
4
sys - 1024

$ ./sys
1024
1024
sys - 0

В чем может быть дело?

Филипп

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Вызов system() возвращает неверный код завершения?"
Сообщение от SergeiZz Искать по авторуВ закладки on 30-Апр-03, 10:16  (MSK)
>Результаты парадоксальны:
system() возвращает не код ошибки.
Если нужен код ошибки, нужно использовать
j= system("./ret");
j= WEXITSTATUS(j);
  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Спонсоры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

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