![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
baunts |
![]() ![]()
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 1 Регистрация: 7.9.2011 Пользователь №: 2852 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
1 int value = 1111111;
2 char str[20] = {'\0'}; 3 sprintf (str, "%d", value); 4 gtk_entry_set_text ( GTK_ENTRY (entry), str ); есть ли решение поприличнее (короче и универсальнее) 2и3 строк? |
|
|
![]() |
Iron Bug |
![]()
Сообщение
#2
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: ![]() ![]() ![]() |
BRE, может быть ) не может быть, а абсолютно точно. в кроссплатформе надо избегать непортабельных частных реализаций. под другими системами этих XXX_s функций нет и можно нарваться на проблемы. если очень хочется, можно определить макросы, конечно. чтобы под вендой был sprintf_s, а под линём - sprintf. но это тоже довольно хитрый макрос надо писать. 2 char str[20] = {'\0'}; 3 sprintf (str, "%d", value); кстати, занулять строку не обязательно. sprintf сам добавляет '\0' после окончания записи строки. нужно только проверять возвращаемый результат - сколько символов он записал в строку (естественно, добавленный ноль в конце не включается в длину). |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 23.4.2025, 9:29 |