Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.76/21: Рейтинг темы: голосов - 21, средняя оценка - 4.76
25 / 41 / 14
Регистрация: 27.03.2014
Сообщений: 754

Uint в char array

15.07.2017, 17:57. Показов 4665. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет, скажите как конвертировать
C++
1
2
3
4
5
6
7
8
9
10
for (unsigned int i = 0; i < 4294967295; i++)
    {
        char sample[] = "911"; //вот в таком виде из i получить переменную как?
        //типа так чтобы было
        char res[] = i;
        //или так
        char const *res= i;
        //или так
        char *res= i;
    }
только типом std::string нельзя пользоваться для решения этого вопроса) а то бы я сам быстро сделал) про std::string забыть задача такова.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.07.2017, 17:57
Ответы с готовыми решениями:

array char* to char* (значения массива указателей в один указатель)
Как сложить(или вывести в формате char*) все значения массива указателей(char *) воедино, то есть сложить строки и назначить результату...

написать прогу, которая подсчитывает макс. и мин. значения переменных (int, shorting, longint, uint, char, uchar), ещё указать размер в байтах
помогите плиз. желательно, чтобы программа была написана максимально простым способом

Написать прогу, которая подсчитывает макс. и мин. значения переменных (int, shorting, longint, uint, char, uchar), ещё указать размер в байтах
Программа должна содержать функцию printf. Без функции std::count и т.п.

20
 Аватар для Геомеханик
838 / 641 / 940
Регистрация: 26.06.2015
Сообщений: 1,409
15.07.2017, 18:00
Лучший ответ Сообщение было отмечено S_el как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <iostream>
 
char* to_str(char* s, unsigned int n){
    char c, *p, *t = s;
    do {
        *s++ = static_cast<char>(n % 10) + '0';
    } while((n /= 10) != 0);
    *s = '\0';
 
    for(--s, p = t; p < s; ++p, --s){
        c  = *p;
        *p = *s;
        *s = c;
    }
    return t;
}
 
int main(void){
    char s[12];
    std::cout << to_str(s, 1234567890) << std::endl;
    std::cout << to_str(s, 2007) << std::endl;
    std::cout << to_str(s, 97531) << std::endl;
    std::cin.get();
    return 0;
}
1
Любитель чаепитий
 Аватар для GbaLog-
3745 / 1801 / 566
Регистрация: 24.08.2014
Сообщений: 6,020
Записей в блоге: 1
15.07.2017, 18:05
C++
1
2
char res[11];
sprintf(res, "%o", i);
1
Программист
 Аватар для prZzZ
119 / 97 / 11
Регистрация: 22.03.2011
Сообщений: 244
15.07.2017, 18:06
jenokizm, itoa Вам в помощь...
1
25 / 41 / 14
Регистрация: 27.03.2014
Сообщений: 754
15.07.2017, 18:16  [ТС]
Друзья! Спасибо за ваши отличные варианты. Сам только что вспомнил про _itoa_s(...) она же itoa. Но во всех трех случаях я так понимаю char размер выделяется от фонаря и как правило больше чем число знаков. А не константу передовать туда нельзя... Вот это бы еще решить

Добавлено через 3 минуты
Ааа просто динамически создавать
C++
1
char * string = new char[len]();
Ну ок сойдет

Добавлено через 41 секунду
Тогда еще вот в придачу
C++
1
2
3
4
5
6
7
8
int count_numbers(int num) {
    int count = 0;
    while (num != 0) {
        count++;
        num /= 10;
    }
    return count;
}
0
15.07.2017, 18:41

Не по теме:

Цитата Сообщение от prZzZ Посмотреть сообщение
itoa Вам в помощь...
не стандарт не нужен. :-/

0
25 / 41 / 14
Регистрация: 27.03.2014
Сообщений: 754
15.07.2017, 20:32  [ТС]
Блин народ чето у меня с динамическим массивом ни один из способов не робит( Сперва подумал гуд, а оказывается нет.
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
15.07.2017, 21:51
Не представляю, зачем такое может пригодиться...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
 
// короткий, но не совсем гуманный способ получить длину числа
inline size_t numlen(unsigned n) {
    return (int)log10(n) + 1;
}
 
char * int2char(int n) {
    size_t len;
    char * ptr;
    
    if ( n == 0 )
        len = 2;
    else if ( n < 0 )
        len = 2 + numlen(-n);
    else
        len = 1 + numlen(n);
    
    ptr = new char[len];
    sprintf(ptr, "%d", n);
    
    return ptr;
}
 
int main() {
    int n;
    char * s;
    
    while ( std::cout << "Number: " && std::cin >> n ) {
        s = int2char(n);
        std::cout << "As string: " << s << " length of " << strlen(s) << " chars." << std::endl;
        delete [] s;
    }
    
    return 0;
}
0
25 / 41 / 14
Регистрация: 27.03.2014
Сообщений: 754
15.07.2017, 22:22  [ТС]
easybudda, спасибо, но sprintf устарела и не компилится. А с sprintf_s какой то неадекватный результат
0
Любитель чаепитий
 Аватар для GbaLog-
3745 / 1801 / 566
Регистрация: 24.08.2014
Сообщений: 6,020
Записей в блоге: 1
15.07.2017, 22:23
Цитата Сообщение от easybudda Посмотреть сообщение
C++
1
2
s = int2char(n);
delete [] s;
ошибка дизайна. имхо.
0
25 / 41 / 14
Регистрация: 27.03.2014
Сообщений: 754
15.07.2017, 22:28  [ТС]
Цитата Сообщение от easybudda Посмотреть сообщение
Не представляю, зачем такое может пригодиться...
может. Представь есть функция генерации хеша из строки. стринг кудой не поддерживается, с буквами просто, но я пока тестирую и сверяю результат в простом цикле с цифровыми якобы паролями...
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
15.07.2017, 22:35
Цитата Сообщение от jenokizm Посмотреть сообщение
sprintf устарела и не компилится
Это мелкостудия параноидальна и не компилирует
C++
1
#define _CRT_SECURE_NO_WARNINGS 1
в самом верху файла до заголовков
Цитата Сообщение от GbaLog- Посмотреть сообщение
ошибка дизайна. имхо.
Да и сама идея порочна. А так, strdup к примеру тоже указатель на динамически выделенную память возвращает, что же, ей теперь по морально-нравственным соображениям не пользоваться?

Добавлено через 3 минуты
Цитата Сообщение от jenokizm Посмотреть сообщение
стринг кудой не поддерживается
std::string::c_str - не?
0
25 / 41 / 14
Регистрация: 27.03.2014
Сообщений: 754
15.07.2017, 22:43  [ТС]
Цитата Сообщение от easybudda Посмотреть сообщение
#define _CRT_SECURE_NO_WARNINGS 1
Не сработало( все равно говорит устарела.
Цитата Сообщение от easybudda Посмотреть сообщение
std::string::c_str - не?
так я о чем?
Цитата Сообщение от jenokizm Посмотреть сообщение
стринг кудой не поддерживается
Добавлено через 2 минуты
Кстати прикол, не знаю почему но отключения правил у меня не работают в любом виде. Может это фишка 2015 студии.
Допустим еще так пробовал
C++
1
#pragma warning(disable:4996);
И фиг там.
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
15.07.2017, 22:55
Цитата Сообщение от jenokizm Посмотреть сообщение
Кстати прикол, не знаю почему но отключения правил у меня не работают в любом виде.
А создавал "пустой проект" или "консольное приложение"?
0
25 / 41 / 14
Регистрация: 27.03.2014
Сообщений: 754
15.07.2017, 23:18  [ТС]
Цитата Сообщение от easybudda Посмотреть сообщение
"консольное приложение"
а есть разница?)) нас в универе только так учили) кстати в куде вообще нет sprintf так что походу это вариант отпадает)
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
15.07.2017, 23:34
Цитата Сообщение от jenokizm Посмотреть сообщение
а есть разница?
Да.
Цитата Сообщение от jenokizm Посмотреть сообщение
кстати в куде вообще нет sprintf
А это тут каким боком? CUDA - просто библиотека для расчётов на камне видеокарты. В ней и cin/cout нет, если на то пошло.
0
25 / 41 / 14
Регистрация: 27.03.2014
Сообщений: 754
15.07.2017, 23:40  [ТС]
Да круто я не сомневаюсь что работает и тебе спасибо за труд. Но на куде не прокатит, нет это не просто библиотека. Там свои правила, они вырезали дофига всего. и свой компилятор это типа вставки
0
309 / 221 / 74
Регистрация: 23.05.2011
Сообщений: 981
16.07.2017, 00:09
Попробуй через Project -> Properties -> C/C++ ->General выставить Treat Warnings As Errors на No. Ну, или другие настройки там же.
0
Любитель чаепитий
 Аватар для GbaLog-
3745 / 1801 / 566
Регистрация: 24.08.2014
Сообщений: 6,020
Записей в блоге: 1
16.07.2017, 07:53
Цитата Сообщение от easybudda Посмотреть сообщение
А так, strdup к примеру тоже указатель на динамически выделенную память возвращает
может быть поэтому её и нет в стандарте. )))

Добавлено через 16 секунд
Цитата Сообщение от easybudda Посмотреть сообщение
А так, strdup к примеру тоже указатель на динамически выделенную память возвращает
может быть поэтому её и нет в стандарте. )))
0
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,816
16.07.2017, 08:06
Цитата Сообщение от jenokizm Посмотреть сообщение
Может это фишка 2015 студии.
C++
1
#pragma warning(disable:4996);
Просто нефиг точки с запятой ставить там, где это не нужно
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
16.07.2017, 08:06
Помогаю со студенческими работами здесь

написать, прогу которая подсчитывает макс. и мин. значения переменных (int, shorting, longint, uint, char, uchar), ещё указать размер в байтах
Написать желательно простейшим языком(без применения каких-то очень навороченных функций). Помогите, плиз

Char array
написал такой код char Arry; for (int i = 0; i &lt; 20; ++i) { for (int j = 0; j &lt; 20; ++j) { Arry = {o}; ...

Сравнение char array
Вообщем Случайно допустил такую конструкцию if (a &gt; b) { .... } запамятовав, что a и b не int'ы, а char'ы, но тем не...

Array не выводит char
Собственно не задание ни чего, хочу вывести небольшую программу с &quot;арами&quot;, а именно - хочу что бы при введении ID 1 или 0 , выдавало Имя...

UnicodeString to Array of char c++ builder
Подскажите пожалуйста, каким образом можно посимвольно записать AnsiString в Array char. Можно так же вариант и из файла. Если не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&amp;d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru