Модераторы: xvr
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с va_start, va_start 
:(
    Опции темы
Oleg IT
Дата 6.12.2004, 11:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 6.7.2004

Репутация: нет
Всего: нет



Компиляция библиотеки требует использования одного аргумента в макросе va_start (библиотека содержит данный макрос в заголовочном файле). А компиляция модуля использующего данную библиотеку требует использования двух аргументов. Man на va_start говорит, что надо использовать два аргкмента. Как победить эту проблему?
PM MAIL   Вверх
Mad
Дата 6.12.2004, 14:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Эксперт
Сообщений: 656
Регистрация: 18.10.2004
Где: Одесса

Репутация: 1
Всего: 19



Внимательно посмотри #ifdef в хидере либы, скорей всего просто надо какойто #define сделать


--------------------
user posted image
PM MAIL   Вверх
azesmcar
Дата 6.12.2004, 15:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 1
Всего: 211



Я передаю количество элементов...
Код

void DeleteFiles( int count, ... )
{
va_list ap;
va_start( ap, count );
for ( int i = 0; i < count; ++i )
{
 DeleteFile( va_arg( ap, char* ) );
}
va_end( ap );
}

Приблизительно так...
Добавлено @ 15:48
А если формат получаешь то так...
Код

int sprintf(char * buf, const char *fmt, ...)
{
va_list args;
int i;

va_start(args, fmt);
i=vsprintf(buf,fmt,args);
va_end(args);
return i;
}

Код был любезно украден из source-ов линукса...smile
PM   Вверх
Oleg IT
Дата 6.12.2004, 17:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 6.7.2004

Репутация: нет
Всего: нет



Спасибо, любезные smile
Дошло. Оказывается есть два хедера с этим va_start. Один совместимый с Windows, другой оригинальный. Так я в проекте оба включал.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Программирование под Unix/Linux"
xvr
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой "Код".
  • Вопросы мобильной разработки тут
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема »


 




[ Время генерации скрипта: 0.0422 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.