nixp.ru v3.0

19 января 2017,
четверг,
01:11:56 MSK

DevOps с компанией «Флант»
fatboy написал 27 июля 2004 года в 18:37 (303 просмотра) Ведет себя как мужчина; открыл 4 темы в форуме, оставил 11 комментариев на сайте.

Помогите разобраться с параметрами stat/fstat (со вторым параметром) на предмет вычисления размера файла. Можно и другой способ оного если есть более оптимальный.

Genie

man 2 stat

очень доходчиво.

у меня даже по-русски

fatboy

Вот этот мэн я сегодня с утра мучаю :)

Никак не могу разобраться со вторым параметром :( Нужно такую же структуру туда передавать, с теми же типами полей (имеются ввиду типы time_t, off_t и т.д.) или указатель на эту структуру? Указатель на структуру не получается! Может оно так и должно быть, не знаю я еще… можно ли на структуру указатель делать?

Тыкался сегодня мыкался пол-дня а путного ничегошеньки не вышло!

Не могу я догнать :) вот такого параметра struct stat *buf

Как я понял, это типа структура, идентичная структуре stat…

Тогда и объявляется она примерно так:

struct mySt

{

/*Поля, идентичные полям struct stat*/

};

а пользуется:

/*n*/ int res=stat(«path», mySt);

/*n+1*/ int size=mySt.st_size;

Так нифига не получается. Компилятор жестко ругается, типа:

file.cpp: n: syntax error before ')'

file.cpp: n+1: syntax error before '.'

И это минимум ошибок, которого я добился и максимум того, что добился вообще.

Запутался совсем! HELP !!!!!

Кстати о компиляторе и хедерах: # include —- большое предупреждение и совет пользовать , а когда # include —- operator<< & operator>> вообще не распознает. Это по поводу ANSI. Компилятор — g++; Система — Mandrake 10.

fatboy
fatboy
Вот этот мэн я сегодня с утра мучаю :)

Никак не могу разобраться со вторым параметром :( Нужно такую же структуру туда передавать, с теми же типами полей (имеются ввиду типы time_t, off_t и т.д.) или указатель на эту структуру? Указатель на структуру не получается! Может оно так и должно быть, не знаю я еще… можно ли на структуру указатель делать?

Тыкался сегодня мыкался пол-дня а путного ничегошеньки не вышло!

Не могу я догнать :) вот такого параметра struct stat *buf

Как я понял, это типа структура, идентичная структуре stat…

Тогда и объявляется она примерно так:

struct mySt

{

/*Поля, идентичные полям struct stat*/

};

а пользуется:

/*n*/ int res=stat(«path», mySt);

/*n+1*/ int size=mySt.st_size;

Так нифига не получается. Компилятор жестко ругается, типа:

file.cpp: n: syntax error before ')'

file.cpp: n+1: syntax error before '.'

И это минимум ошибок, которого я добился и максимум того, что добился вообще.

Запутался совсем! HELP !!!!!

ПО ЭТОМУ ВОПРОСУ — ОТБОЙ! Нарыл прикольный справочник и вроде как со всем разобрался. Вот адрес: http://publib.boulder.ibm.com/infocenter/tpfhelp/index.jsp?topic=/com.ibm.tpf.doc.4.1-PUT18/gtpc2/gtpc2m02.htm

ecobeingecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.