LINUX.ORG.RU

system()


0

0

Использую функцию system() передаю команду. Как "подобрать" из консоли то что команда напечатала?

PS c++ кто не понял ;)

anonymous

Ответ на: комментарий от anonymous

Нашел пример один, ясненько.

char *cmd = "ls *.c";
	FILE *ptr;
	if ((ptr = popen (cmd, "r")) != NULL)
	  while (fgets (buf, n, ptr)) != NULL)
	    (void) printf ("%s", buf);

Почему в последней строчке к void приводим. Не в первый раз встречаю, но не могу понять ЗАЧЕМ.

С++ учил под Дос, винду, так что...

anonymous
()
Ответ на: комментарий от anonymous

>Почему в последней строчке к void приводим. Не в первый раз встречаю, >но не могу понять ЗАЧЕМ.

Затем, что printf возвращает int, который не используется. И некоторые компиляторы (а скорее, даже не компиляторы, а тулзы для проверки кода из семейства lint) на это выдают предупреждение -- что возвращаемое значение, мол, выбрасывается. Однако в этом нет абсолютно ничего незаконного или опасного с точки зрения стандартов С/С++, кроме того, множество функций возращают значения, которые обычно не используются, так что по сути явное приведение к (void) только замусоривает код (IMHO) . Как бы то было, это сугубо вопрос стиля.

>С++ учил под Дос, винду, так что...

Вышеизложенное не имеет никакого отнощения к DOS, Win, Linux и т.п., так чтою...

aa5779
()
Ответ на: комментарий от aa5779

Ясно. Спасибо за ответы...

И еще, давно хотел узнать: что такое IMHO(ИМХО)?

Здесь это слово довольно часто употребляют, а что это еще никто не ответил...

anonymous
()
Ответ на: комментарий от anonymous

IMHO => In My Humble Opinion (т. е. По Моему Скромному Мнению)

aa5779
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.