|
нужно передать строку с замешанными данными |
|
|
|
Feb 14 2016, 16:21
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(andrew_b @ Feb 13 2016, 10:10)  Код [andrew@myhost ~]$ man _Printf No manual entry for _Printf Для IAR: Код extern "C" int _Printf(void *(*)(void *, int), void *, const char *, va_list *); uint GrAPI::Print(int x, int y, char const *s, ...) { va_list v; va_start(v, s); GrPrintData data; data.x = x; data.y = y; data.width_gap = 0; _Printf(PrintPutc, (void *)&data, s, &v); va_end(v); return data.width; } Для CCS подобная функция: Код #if !defined(NOFLOAT) && !defined(MINIMAL) extern "C" int _printfi(char **_format, va_list _ap, void *_op, int (*_outc)(char, void *), int (*_outs)(char *, void *, int)); #elif defined(NOFLOAT) extern "C" int _printfi_nofloat(char **_format, va_list _ap, void *_op, int (*_outc)(char, void *), int (*_outs)(char *, void *, int)); #elif defined(MINIMAL) extern "C" int _printfi_minimal(char **_format, va_list _ap, void *_op, int (*_outc)(char, void *), int (*_outs)(char *, void *, int)); #endif Возможности - намного больше чем у sprintf или snprintf. В run-time библиотеке IAR все функции семейства printf работают через _Printf()
|
|
|
|
|
Feb 14 2016, 16:53
|
Профессионал
    
Группа: Свой
Сообщений: 1 357
Регистрация: 12-04-05
Из: Петербург
Пользователь №: 4 079

|
Пробую кодеблокс. Какой компилятор установить надо, чтобы из-под чтобы компилить код для железки арм Линукс? Само ядро я собирал линаро -gcc. Но вроде на сайте кодеблокс пишут,что нельзя для линукса линаро поставить. Цитата(jcxz @ Feb 14 2016, 19:21)  Для IAR: Код extern "C" int _Printf(void *(*)(void *, int), void *, const char *, va_list *); uint GrAPI::Print(int x, int y, char const *s, ...) { va_list v; va_start(v, s); GrPrintData data; data.x = x; data.y = y; data.width_gap = 0; _Printf(PrintPutc, (void *)&data, s, &v); va_end(v); return data.width; } Для CCS подобная функция: Код #if !defined(NOFLOAT) && !defined(MINIMAL) extern "C" int _printfi(char **_format, va_list _ap, void *_op, int (*_outc)(char, void *), int (*_outs)(char *, void *, int)); #elif defined(NOFLOAT) extern "C" int _printfi_nofloat(char **_format, va_list _ap, void *_op, int (*_outc)(char, void *), int (*_outs)(char *, void *, int)); #elif defined(MINIMAL) extern "C" int _printfi_minimal(char **_format, va_list _ap, void *_op, int (*_outc)(char, void *), int (*_outs)(char *, void *, int)); #endif Возможности - намного больше чем у sprintf или snprintf. В run-time библиотеке IAR все функции семейства printf работают через _Printf() Так это на плюсах должен быть проект тогда.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|