'function': невозможно преобразовать из 'double' в 'wchar_t *' - PullRequest
0 голосов
/ 09 января 2012

Я пытаюсь скомпилировать в Visual Studio 2010, и это точная ошибка, которую я получаю:

Error 65 error C2440: 'function' :
       cannot convert from 'double' to 'const wchar_t *'    

Обидная строка:

swprintf(subbuf[num], L"%f\0", va_arg(args, double));

Это должно скомпилироватьчисто, поэтому изменения кода не рекомендуется.Я пропускаю какой-либо параметр компилятора, который может решить эту проблему?

РЕДАКТИРОВАТЬ:

Вот объявление subbuf:

#define GDB_CHAR wchar_t
GDB_CHAR subbuf[MAX_SUBS][STATUS_MSG_LEN+1] ;

ТакжеЧто касается аргумента size, я также проверил страницу документации, однако компилятор не выдает ошибку на

swprintf(subbuf[num], L"%c\0", va_arg(args, int));

, поэтому у него нет проблем при преобразовании из int в wchar_t * и функцииАргументы в порядке.

Если это все еще недостаточно информативно, пожалуйста, прокомментируйте и направьте меня к любому другому вам, ребята.Спасибо

1 Ответ

2 голосов
/ 09 января 2012

Быстрый взгляд на документацию показывает, что функции требуется аргумент, определяющий размер выходной строки, который вы пропустили.

...