Форум программистов, компьютерный форум CyberForum.ru

Конвертация int в char и обратно - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 87, средняя оценка - 4.79
SiNn3R
0 / 0 / 0
Регистрация: 19.09.2008
Сообщений: 10
23.09.2008, 19:33     Конвертация int в char и обратно #1
Помогите, я запутался...

Есть 2 переменных:
int a;
char b;

Допустим a = 0. Нужно преобразовать ее в символ, чтобы b = '0'.
И наоборот b = '8', тогда a = 8.

Если я пишу так:
a = char(b);

То получаю код символа...
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
qwone
8 / 8 / 1
Регистрация: 18.08.2008
Сообщений: 129
23.09.2008, 19:52     Конвертация int в char и обратно #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
using namespace std;
int main(){
 
int a=75,b_int;
char a_char,b='A';
b_int=(int)b;  
a_char=(char)a;
cout<<a_char <<"\t"<<b_int<<endl;
    
    return 0;
}
запусти и догадайся !
Spo1ler
 Аватар для Spo1ler
291 / 51 / 3
Регистрация: 22.05.2008
Сообщений: 788
23.09.2008, 21:05     Конвертация int в char и обратно #3
ищем материалы по itoa() и atoi()
Sined
 Аватар для Sined
9 / 7 / 2
Регистрация: 30.08.2008
Сообщений: 120
23.09.2008, 22:11     Конвертация int в char и обратно #4
Цитата Сообщение от Spo1ler Посмотреть сообщение
ищем материалы по itoa() и atoi()
По ходу Spo1ler, прав.

А у тебя qwone, будет выводиться код символа, а не сам символ цыфры

Темболее он привел пример.
Цитата Сообщение от SiNn3R Посмотреть сообщение
Если я пишу так:
a = char(b);
XuTPbIu_MuHTAu
Эксперт C++
 Аватар для XuTPbIu_MuHTAu
2219 / 734 / 10
Регистрация: 27.05.2008
Сообщений: 1,507
23.09.2008, 22:19     Конвертация int в char и обратно #5
Код
b= '0'+a // если а от нуля до девяти получишь нужный код символа.
В типе char символы '0'..'9' идут подряд.


угадай,как наоборот.
qwone
8 / 8 / 1
Регистрация: 18.08.2008
Сообщений: 129
23.09.2008, 22:28     Конвертация int в char и обратно #6
Так как функция itoa не входит в стандарт, наиболее правильным является использование стандартных функций:
  • sprintf(str, "%d", value); преобразует к десятичному виду.
  • sprintf(str, "%x", value); преобразует к шестнадцатиричному виду.
  • sprintf(str, "%o", value); преобразует к восьмеричному виду.
смотри http://ru.wikipedia.org/wiki/Itoa

а воoбще у меня такой проблемы никогда не стояло . поэтому я могу и ошибаться .
Если бы налез бы на нее .то знал бы верный ответ.
Sined
 Аватар для Sined
9 / 7 / 2
Регистрация: 30.08.2008
Сообщений: 120
24.09.2008, 20:15     Конвертация int в char и обратно #7
Цитата Сообщение от qwone Посмотреть сообщение
а воoбще у меня такой проблемы никогда не стояло . поэтому я могу и ошибаться .
Если бы налез бы на нее .то знал бы верный ответ.
В этом ты прав, но не каждый в этом признается...

Хотя можно и использовать itoa и atoi, смотря начем SiNn3R пишет.

Добавлено через 21 час 36 минут 53 секунды
Цитата Сообщение от XuTPbIu_MuHTAu Посмотреть сообщение
В типе char символы '0'..'9' идут подряд.
Это хорошо что одну цифру надо использовать, а если ряд цифр...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.09.2008, 20:24     Конвертация int в char и обратно
Еще ссылки по теме:

Конвертация qint64 в int и обратно C++
C++ Конвертация int в char
C++ Преобразование int char и обратно
C++ Форматирование строк, char to int & int to char
Реализация функции char *padl(const char *string, int len, int c=' ') C++

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

Или воспользуйтесь поиском по форуму:
XuTPbIu_MuHTAu
Эксперт C++
 Аватар для XuTPbIu_MuHTAu
2219 / 734 / 10
Регистрация: 27.05.2008
Сообщений: 1,507
24.09.2008, 20:24     Конвертация int в char и обратно #8
А здесь идет речь как раз об одном символе... к тому же,этой инфы вполне хватит,чтобы сделать (в общеобразовательных целях) свой atoi / itoa
Yandex
Объявления
24.09.2008, 20:24     Конвертация int в char и обратно
Ответ Создать тему
Опции темы

Текущее время: 06:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru