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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
mogtar
0 / 0 / 0
Регистрация: 08.11.2013
Сообщений: 51
#1

Вывод адреса по указателю на char в std::cout - C++

30.11.2013, 10:40. Просмотров 358. Ответов 4
Метки нет (Все метки)

Есть такая вот функция.
C++ (Qt)
1
2
3
4
5
6
7
void Char(char type[10]){
char c,*vc=&c;
cout<<setw(8); cin>>c;
cout<<type
<<setw(8)<<c
<<setw(11)<<hex<<c
<<setw(20)<<setprecision(3)<<vc<<endl;}
Не работает hex,символ выводит в том же формате, адрес показывает непонятными символами вообще.
Помогите пожалуйста написать верно.
Миниатюры
Вывод адреса по указателю на char в std::cout  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.11.2013, 10:40     Вывод адреса по указателю на char в std::cout
Посмотрите здесь:

C++ Не воспринимает ни std::cout, ни std::cin. Вобщем ничего из std. Также не понимает iostream
(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const& C++
C++ что использовать std::cout или просто using namespace std?
C++ ошибка в программе (cannot convert 'std::string {aka std::basic_string<char>}' to 'const char*')
C++ Не работает std::cout || std::cin
C++ Стандартный поток и STL (std::copy to std::cout)
IntelliSense: отсутствует оператор "<<", соответствующий этим операндам типы операндов: std::basic_ostream<char, std::char_traits<char> C++
В чем разница std::cout и просто cout? C++
Вывод адреса символа в cout C++
Операция std::cout для Объекта типа std::string C++
Ошибка в std::cout<<std::endl C++
C++ Вывод адреса переменной типа char

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
newbie666
Заблокирован
30.11.2013, 10:49     Вывод адреса по указателю на char в std::cout #2
Цитата Сообщение от mogtar Посмотреть сообщение
setw(11)<<hex<<c
сделай сперва приведение к инту здесь
<<setw(11)<<hex<<(int)c
mogtar
0 / 0 / 0
Регистрация: 08.11.2013
Сообщений: 51
30.11.2013, 10:55  [ТС]     Вывод адреса по указателю на char в std::cout #3
Цитата Сообщение от newbie666 Посмотреть сообщение
сделай сперва приведение к инту здесь
<<setw(11)<<hex<<(int)c
Спасибо, а не знаете что с адресом? я заметил такое только для char выбивает
ValeryS
Модератор
6446 / 4912 / 451
Регистрация: 14.02.2011
Сообщений: 16,283
30.11.2013, 11:01     Вывод адреса по указателю на char в std::cout #4
Цитата Сообщение от mogtar Посмотреть сообщение
Спасибо, а не знаете что с адресом? я заметил такое только для char выбивает
char переопределен для вывода символов поэтому он и адрес выдает как символы
нужно явно приводить к int
поэтому, мне лично, проще использовать printf
C++
1
printf("%c %d %x %x",c,c,c,&c);
По моему гораздо удобнее
alsav22
5410 / 4806 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
30.11.2013, 13:42     Вывод адреса по указателю на char в std::cout #5
Цитата Сообщение от mogtar Посмотреть сообщение
а не знаете что с адресом? я заметил такое только для char выбивает
Чтобы увидеть, через cout <<, адрес, который содержится в указателе на char, нужно привести указатель к указателю на void.
C++
1
(void*)vc
Yandex
Объявления
30.11.2013, 13:42     Вывод адреса по указателю на char в std::cout
Ответ Создать тему
Опции темы

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