Как перевести число в char c
Перейти к содержимому

Как перевести число в char c

  • автор:

Как перевести число в char c

Віримо в перемогу ЗСУ!
Працюємо з 09:00 до 18:00 Пн-Сб Працюємо з 09:00 до 19:00 Пн-Пт —> Магазин у відпустці до 19.08.2023 —>

  • Ваша корзина пуста!
  • Главная
  • Статьи
  • Преобразование Char в Integer и обратно

Преобразование целочисленных переменных int в символьные переменные char в Arduino IDE — довольно простой процесс, но заслуживающий отдельной напоминалки. Сложнее всего понять зачем вообще нужен тип Char. Напомню, что это однобайтный символьный тип.

Для преобразования Int в Char потребуется сначала переделать integer в строку String, после чего конвертировать String в массив Char. Все так закручено специально, чтобы никто не догадался 🙂

Давайте для начала рассмотрим более простой вариант — преобразование символа Char в Integer, а затем перейдем к основному вопросу.

Шаг 1: Char в Integer

Для конвертации char в integer используйте следующую короткую комбинацию:

int a;
char b;
a=b-'0';

Шаг 2: Integer в Char

В следующем примере будет задействована вспомогательная переменная String. И самое сложное здесь — это преобразование в массив символов при помощи специальной функции.

Код выглядит следующим образом:

int a=1;
char b[2];
String str;
str=String(a);
str.toCharArray(b,2);

Используя этот пример, вы преобразуете integer в char. Однако, в полученном массиве поместится только цифра в пределах от -9 до 99. Для большего количества цифр вам необходимо будет увеличить размер массива и вместо записи:

char b[2];

Нужно будет вставить

char b[5];

таким образом можно будет отобразить в символах integer, который занимает 5 символов. Так же можно использовать массив char и другой длинны.

Спасибо за внимание! До новых встреч!

Микро концевой выключатель KW-1

Микро концевой выключатель KW-1

Микро переключатель с максимальным током коммутации 2 А. Такие ставят в компьютерные мышки в качеств..

Arduino многомерные массивы

Arduino многомерные массивы

Привет друзья! Это уже второе видео о массивах. В первом я рассказал, что знаю об одномерных массива..

Сменное жало паяльника 900M-T 1шт.

Сменное жало паяльника 900M-T 1шт.

Жало для паяльника 60Вт с регуляторомДиаметр рабочей части 3 ммВнутренний диаметр отверстия под нагр..

Символьный индикатор LCD 2004

Символьный индикатор LCD 2004

Четырехстрочный символьный жидкокристаллический индикатор с синей подсветкой LCD2004.Напряжение пита..

Фольгированный текстолит двухсторонний 75х100мм

Двухсторонний фольгированный медью текстолит для изготовления печатных платТолщина 1,5 мм Размеры 7..

Как перевести число в char c

Сообщение от kaljan775

а мой пример вы не поняли, да.

А ваш пример, а точнее часть его очень даже пригодилось.
я щас разработаю код и выложу. За ранее скажу огромное спосибо за мысль и идею.

вот код программы. его можно сокротить введя функчии и указатели. но это потом.

char str_2[100]="(1203+123-345/321*3214)"; int chislo[15]; int chisel[15]; char znak[50]; int a,i,f,g;//разные счётчики. for(int i=0;i <15;i++) < chislo[i]=0; chisel[i]=0; >a=0; i=0; g=0; for(f=0;f <100;f++) < switch(str_2[f])< case '+':znak[i]=str_2[f]; for(g=0;gg=0;a=0;i++; break; case '-':znak[i]=str_2[f];for(g=0;g g=0;a=0;i++;break; case '*':znak[i]=str_2[f];for(g=0;g g=0;a=0;i++;break; case '/':znak[i]=str_2[f];for(g=0;g g=0;a=0;i++;break; case '0':chislo[g]=((static_cast( str_2[f] ))-48);g++;a++;break; case '1':chislo[g]=((static_cast( str_2[f] ))-48);g++;a++;break; case '2':chislo[g]=((static_cast( str_2[f] ))-48);g++;a++;break; case '3':chislo[g]=((static_cast( str_2[f] ))-48);g++;a++;break; case '4':chislo[g]=((static_cast( str_2[f] ))-48);g++;a++;break; case '5':chislo[g]=((static_cast( str_2[f] ))-48);g++;a++;break; case '6':chislo[g]=((static_cast( str_2[f] ))-48);g++;a++;break; case '7':chislo[g]=((static_cast( str_2[f] ))-48);g++;a++;break; case '8':chislo[g]=((static_cast( str_2[f] ))-48);g++;a++;break; case '9':chislo[g]=((static_cast( str_2[f] ))-48);g++;a++;break; case ')':znak[i]=' '; for(g=0;g break; default:break; > > for(int i=0;i

Последний раз редактировалось Stilet; 12.12.2010 в 12:55 .

некорректный перевод из int в char

Очень тупой вопрос, но не могу нормальный результат получить. Нужно перевести числа из диапазона 10 .. 99 (числа хранятся в int ) в char . В итоге должна быть строка из чисел данного диапазона, которая потом будет записана в файл. Конструкции типа:

int a = 65; char ch = 65; 
int a = 65; char ch = (char)a; 

не работают (в строке — ASCII символы). Заранее спасибо.
Отслеживать
задан 29 ноя 2017 в 9:15
486 1 1 золотой знак 3 3 серебряных знака 17 17 бронзовых знаков

В смысле не работают? Перевод целого типа в другой целый тип — одно, а перевод любого целого типа в строку — совсем другое. Используйте sprintf() к примеру.

29 ноя 2017 в 9:25

3 ответа 3

Сортировка: Сброс на вариант по умолчанию

Раз вам нужно переводить многозначные числа, просто в char их не перевести, только в строку (массив char ).

Раз вы работаете в C, то просто выделяйте память под строку и используйте sprintf (или безопасные аналоги):

char s[20]; // Для двузначного хватит и s[3] - не забываем о нулевом символе sprintf(s,"%d",a); 

Вариант с itoa плох тем, что это — нестандартная функция.

Для конкретно двузначных чисел можно и свой код написать:

char s[3] = ; // Чтоб занулить завершающий символ s[0] = '0' + a/10; s[1] = '0' + a%10; 

Перевод из int в char c#

Как перевести значение из int в char? Convert.ToChar и b=(char) d преобразуют значение только в юникод, нужно конкретно такое же значение.

Голосование за лучший ответ

Convert.ToChar(b.ToString());

Похожие вопросы

Ваш браузер устарел

Мы постоянно добавляем новый функционал в основной интерфейс проекта. К сожалению, старые браузеры не в состоянии качественно работать с современными программными продуктами. Для корректной работы используйте последние версии браузеров Chrome, Mozilla Firefox, Opera, Microsoft Edge или установите браузер Atom.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *