|
|
|
Форматный вывод в C++???
|
|||
|---|---|---|---|
|
#18+
Добрый день всем! Разбирался с форматным выводом в С++, оказалось это совсем непросто, в отличие от сишного printf. Применение модификаторов "захламляет" список вывода. Или я что-то неверно понял :). Но как вывести целое в формате "%03d" или строку в формате "%10s" я так и нашел. Посоветуйте, пжалста, как можно осуществить такой вывод? Где можно почитать о форматном выводе? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2006, 16:50 |
|
||
|
Форматный вывод в C++???
|
|||
|---|---|---|---|
|
#18+
А кто printf запретил? sprintf по любому работать должен. CString::Format чем не устраивает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2006, 17:16 |
|
||
|
Форматный вывод в C++???
|
|||
|---|---|---|---|
|
#18+
Ну, конечно, можно и сишными средствами пользоваться, но я хочу узнать возможности С++. А CString::Format щас посмотрю... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2006, 17:32 |
|
||
|
Форматный вывод в C++???
|
|||
|---|---|---|---|
|
#18+
Чуть-чуть, если можно, уточнить в каком С++ работаем. В консольном приложении или как-то по-другому? Если в консольном, то не понятно какие трудности с printf ? Чуть подробнее пожалуйста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2006, 23:13 |
|
||
|
Форматный вывод в C++???
|
|||
|---|---|---|---|
|
#18+
Как бы это сказать попроще и подоходчивее ... Перемудрили в C++ c форматным выводом. Оно конечно понятно, абсолютно свободным от отсутствия контроля типов PRINTF реализовать нельзя в концепции C/C++ - иначе надо, чтобы компилятор парсил форматную строку, что кстати все же некоторые компиляторы делают, но ошибки выдавать они не имеют права, ибо стандарт. Короче мораль - либо не возмущайся , либо не пользуйся. Но ей-богу большие печатные формы на C++ писать очень неудобно, лучше старый добрый printf вызвать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2006, 00:32 |
|
||
|
Форматный вывод в C++???
|
|||
|---|---|---|---|
|
#18+
Слушай!! В стандартной библиотеке есть набор функций по выводу. В частности в <iomanip> есть фун. setw(n) - установка ширины поля. А в классе ios_base тип ios_base::fmtflags описанны флаги форматирования: dec- представление в десятичном виде right- выравнивание Пример: printf("count=%-9.9ld\n" "mask=%#-8.8lx\n", count, mask); cout<<"count=" <<right<<dec<<setw(9)<<count<< "\nmask=0x"<<hex<<setw(8)<<mask<<'\n'; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2006, 14:26 |
|
||
|
Форматный вывод в C++???
|
|||
|---|---|---|---|
|
#18+
Спасибо за ответы! Значит, я не ошибся лучше пользоваться старым printf. Надеялся, что в С++ есть что-нибудь поинтереснее :(... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2006, 15:40 |
|
||
|
Форматный вывод в C++???
|
|||
|---|---|---|---|
|
#18+
До поры до времени, т.к. возможена ошибка несовместимости формата, т.е. пример: size_t s; printf("size=%u\n", s); тип size_t может на самом деле быть usigned long- это значит, что спецификатор формата %u не подходит к аргументу s/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2006, 15:55 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=374&tid=2032077]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
23ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
27ms |
get tp. blocked users: |
1ms |
| others: | 217ms |
| total: | 297ms |

| 0 / 0 |
