Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 5.00
kate11
0 / 0 / 0
Регистрация: 07.10.2011
Сообщений: 33
#1

Cout и printf - C++

27.07.2012, 22:27. Просмотров 1346. Ответов 10
Метки нет (Все метки)

Привет форумчане, не могу разобраться как правильно записать выражение использую не printf, a cout. Вот исходное выражение:
C++
1
printf("H: %I64X \n", h);
Я делаю так:
C++
1
cout<< "H = "<< h<<endl;
Но в итоге получаются одни цифры, а должно быть как в первом случае, т.е. цифры в перемешку с буквами.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.07.2012, 22:27
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Cout и printf (C++):

Printf() - Cout - C++
Простой вопрос. Как заменить printf (&quot;%09d&quot;, a); на cout?

cout vs printf - C++
Что лучше и удобней использывать в написаннии программ? cout или printf?

printf и cout - C++
У меня возник вопрос, что луче еспользовать в C++, printf/scanf или cout/cin ? Что работает быстрее? Есть такой фрагмент кода ...

printf > cout - C++
Помогите переделать printf(&quot;| %3.2f | %3.1f | %7.5f |\n&quot;,a,b,y); на cout.

Замена (printf на cout) - C++
Как заменить здесь использование printf на cout (программа с битовыми полями) void printbin(int x) { int i = 16; ...

Отличие cout от printf - C++
Всем добрый день! у меня такой вопрос: чем отличается cout от printf? у меня есть программа, если я printf заменяю на cout, то выводит...

10
Leomana
59 / 59 / 5
Регистрация: 29.06.2012
Сообщений: 188
27.07.2012, 22:40 #2
C++
1
cout<< hex <<h;
1
kate11
0 / 0 / 0
Регистрация: 07.10.2011
Сообщений: 33
27.07.2012, 22:43  [ТС] #3
Цитата Сообщение от Leomana Посмотреть сообщение
C++
1
cout<< hex <<h;
Спасибо
0
Toshkarik
1147 / 864 / 51
Регистрация: 03.08.2011
Сообщений: 2,404
Завершенные тесты: 1
27.07.2012, 22:44 #4
C++
1
std::cout << std::hex << "H = " << h << std::endl;

Не по теме:

ADD: припозднился

1
HomeR_J_SimpsoN
59 / 59 / 2
Регистрация: 15.10.2010
Сообщений: 356
27.07.2012, 22:45 #5
Исходя из Вашего примера с printf'ом, результат - глупый =)
C++
1
cout<< "H = " << h << "64X" << endl;
=D
Однако, думаю, подразумевалось
Цитата Сообщение от Leomana Посмотреть сообщение
C++
1
cout<< hex <<h;
0
Toshkarik
1147 / 864 / 51
Регистрация: 03.08.2011
Сообщений: 2,404
Завершенные тесты: 1
27.07.2012, 22:50 #6
HomeR_J_SimpsoN, %I64x это формат вывода в VS, на сколько я понял. Означает вывод 64 битного целого в шестнадцатеричном виде.
0
HomeR_J_SimpsoN
59 / 59 / 2
Регистрация: 15.10.2010
Сообщений: 356
27.07.2012, 22:52 #7
Нет, Toshkarik, конкретно ЭТО значит вывести целое число и написать 3 символа (конкретно - 64Х) после него.
0
Toshkarik
1147 / 864 / 51
Регистрация: 03.08.2011
Сообщений: 2,404
Завершенные тесты: 1
27.07.2012, 22:54 #8
HomeR_J_SimpsoN, что бы не быть голословным - читаем.
0
HomeR_J_SimpsoN
59 / 59 / 2
Регистрация: 15.10.2010
Сообщений: 356
27.07.2012, 23:03 #9
Toshkarik, о как...
Именно об этом - я не знал. Но... Все с того же сайтика...
Use %I64x to display an integer on a Windows 64-bit operating system.
Используйте это для отображения целого под ОС Win-64.
То есть мы с Вами оба были не правы =)
Цитата Сообщение от Toshkarik Посмотреть сообщение
Означает вывод 64 битного целого в шестнадцатеричном виде.
По стандарту - управляющая строка должна находиться между знаком % и спецификатором формата. Этого еще никто не отменял =)
Вроде бы...
0
Toshkarik
1147 / 864 / 51
Регистрация: 03.08.2011
Сообщений: 2,404
Завершенные тесты: 1
27.07.2012, 23:10 #10
Если Вы посмотрите на пару сообщений выше, то увидите, что я писал про VS. А про отношение VS к стандарту я уже молчу. Так что я не считаю себя не правым.

Цитата Сообщение от HomeR_J_SimpsoN Посмотреть сообщение
Используйте это для отображения целого под ОС Win-64.
Потому что
The %x (hex int format) printf modifier will not work as expected on a 64-bit Windows operating system. It will only operate on the first 32 bits of the value that is passed to it.
0
HomeR_J_SimpsoN
59 / 59 / 2
Регистрация: 15.10.2010
Сообщений: 356
27.07.2012, 23:13 #11
Toshkarik, окей, Ваша правда =)
0
27.07.2012, 23:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.07.2012, 23:13
Привет! Вот еще темы с ответами:

Отличия printf от cout - C++
Доброе время суток! Вопрос скорее успокоить свою душу, нежели практического применения, В чем концептуальное отличия записей: ...

Переписать из printf в cout - C++
Вот часть кода программы. printf(&quot;BubbleSort#%d:\n&quot;, i); startTime = clock(); fill(smallLong, smallSize); ...

Замена printf на cout - C++
Доброго времени суток. Просьба помочь заменить printf на cout в этой строке: printf(&quot;c1=%.2f+%.2f c2=%.2f-%.2f&quot;,re,im,re,im); (чтобы...

cout & printf - C++
Можно ли с помощью cout сделать подобное printf(&quot;%h\n&quot;,15);??


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.