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

Как вставить перевод строки в конец? - C++

Восстановить пароль Регистрация
 
Troll_Face
 Аватар для Troll_Face
599 / 399 / 4
Регистрация: 26.04.2012
Сообщений: 2,070
16.06.2013, 02:02     Как вставить перевод строки в конец? #1
имеется строка
C++
1
char str[]="123456"
как в нее грамотно вставить символ перевода строки?
пробовал так:
C++
1
2
3
char str[]="123456";
    str[strlen(str)]='\n';
    str[strlen(str)+1]='\0';
не получается...
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
quwy
Native x86
 Аватар для quwy
2734 / 1823 / 477
Регистрация: 13.02.2013
Сообщений: 6,110
16.06.2013, 02:18     Как вставить перевод строки в конец? #2
Для Windows:
C
1
char str[]="123456\r\n"
Для Unix:
C
1
char str[]="123456\n"
Vourhey
Почетный модератор
6468 / 2243 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
16.06.2013, 02:20     Как вставить перевод строки в конец? #3
C++
1
char str[]="123456\n";
Troll_Face
 Аватар для Troll_Face
599 / 399 / 4
Регистрация: 26.04.2012
Сообщений: 2,070
16.06.2013, 02:25  [ТС]     Как вставить перевод строки в конец? #4
не не не. мне немного не так нужно. это я для примера. предположим имеется такая конструкция
C++
1
2
3
4
strcpy(str1, str2)
str1[strlen(str1)]='\r';
str1[strlen(str1)+1]='\n';
str1[strlen(str1)+2]='\0'
не прокатывает так..
quwy
Native x86
 Аватар для quwy
2734 / 1823 / 477
Регистрация: 13.02.2013
Сообщений: 6,110
16.06.2013, 02:27     Как вставить перевод строки в конец? #5
Troll_Face, а памяти дополнительный байт откуда возьмется?
Vourhey
Почетный модератор
6468 / 2243 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
16.06.2013, 02:27     Как вставить перевод строки в конец? #6
Цитата Сообщение от Troll_Face Посмотреть сообщение
не прокатывает так..
А ты не думал, что strlen выясняет длину строки по нулевому символу? И когда, ты записываешь в конец строки ты его просто переписываешь и последующие вызовы не вернут тебе валидную длину. Используй strcat, что за извращения... И не на строку, которая в стеке лежит.
Troll_Face
 Аватар для Troll_Face
599 / 399 / 4
Регистрация: 26.04.2012
Сообщений: 2,070
16.06.2013, 02:30  [ТС]     Как вставить перевод строки в конец? #7
quwy,
Цитата Сообщение от quwy Посмотреть сообщение
а памяти дополнительный байт откуда возьмется?
найду
quwy
Native x86
 Аватар для quwy
2734 / 1823 / 477
Регистрация: 13.02.2013
Сообщений: 6,110
16.06.2013, 02:33     Как вставить перевод строки в конец? #8
Troll_Face, ну так выделите его для начала, а потом уже записывайте. Вы же символом '\r' затерли терминатор, а потом символ '\n' и новый терминатор пишете прямо в космос поверх других данных программы. В вашей статической строке нет места для новых символов.
Troll_Face
 Аватар для Troll_Face
599 / 399 / 4
Регистрация: 26.04.2012
Сообщений: 2,070
16.06.2013, 02:34  [ТС]     Как вставить перевод строки в конец? #9
Цитата Сообщение от Vourhey Посмотреть сообщение
strcat
то, что мне нужно
quwy
Native x86
 Аватар для quwy
2734 / 1823 / 477
Регистрация: 13.02.2013
Сообщений: 6,110
16.06.2013, 02:35     Как вставить перевод строки в конец? #10
Сдается мне, что это еще не конец
Troll_Face
16.06.2013, 02:51  [ТС]
  #11

Не по теме:

Цитата Сообщение от quwy Посмотреть сообщение
Сдается мне, что это еще не конец
в каком плане? если Вы про эту тему, то все, уже конец. а так то я еще к вам много раз обращусь. . глянте лучше мою тему про файлы... не могу понять почему не пашет

quwy
16.06.2013, 02:56
  #12

Не по теме:

Цитата Сообщение от Troll_Face Посмотреть сообщение

Не по теме:


в каком плане? если Вы про эту тему, то все, уже конец. а так то я еще к вам много раз обращусь. . глянте лучше мою тему про файлы... не могу понять почему не пашет

Ладно, каюсь. Недооценил. А вот по ассемблерной сборке не подскажу, на чистом асме писал еще в DOS-времена, дальше как-то вставками в языки высокого уровня обходился...

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.06.2013, 02:59     Как вставить перевод строки в конец?
Еще ссылки по теме:

Как определить конец строки при вводе с консоли? C++
C++ Поясните как присваивается конец строки \0
C++ Вставить символы в начало и конец строки

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

Или воспользуйтесь поиском по форуму:
Troll_Face
16.06.2013, 02:59  [ТС]     Как вставить перевод строки в конец?
  #13

Не по теме:

Цитата Сообщение от quwy Посмотреть сообщение
А вот по ассемблерной сборке не подскажу
мне не нужна ассемблерная вставка. у меня проблема с ofstream. файл не открывается

Yandex
Объявления
16.06.2013, 02:59     Как вставить перевод строки в конец?
Ответ Создать тему
Опции темы

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