В одной из прог мне необходимо было использовать функцию system() для передачи командному интерпретатору команды ls -l имя_файла, но почему- то вывод этой команды отображается раньше, чем текст, который по идее должнен быть перед её выводом. Код фрагмента проги, выполняющего вызов ls -l:
{
printf("You don't have rights to read this file.\n"\
"Rights for this file:");
char b[]="ls -l ";
system(strncat(b,argv[1],strlen(argv[1])));
printf("\n");
return 0;
}
[alex@95-65-17-135 ~]$ ./cloncat hreni
You don't have rights to read this file.
----------. 1 alex alex 0 Май 16 22:39 hreni
Rights for this file:
[alex@95-65-17-135 ~]$