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

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

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

Выравнивание строки s слева к длине m - C++

03.11.2015, 22:47. Просмотров 301. Ответов 14
Метки нет (Все метки)

Выравнивание строки s слева к длине m. Left (s,m). C помощью функции.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.11.2015, 22:47
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Выравнивание строки s слева к длине m (C++):

Выравнивание строки s слева к длине m. Left (s,m) - C++
Выравнивание строки s слева к длине m. Left (s,m). Кто поможет с кодом?

Сортировка строки по длине слова - C++
Сабж. Здравствуйте. Есть код, который вроде логически построен правильно, но он не работает. Уже не знаю как быть. Подскажите пожалуйста в...

Упорядочить текст по длине строки по убыванию - C++
помогите пожалуйста =) текст: I vpilsya komar kak raz Tetke pryamo v praviy glaz. Povariha poblednela, Obmerla i okrivela. ...

Поиск минимальной по длине строки в текстовом файле - C++
помогите пожалуйста решить задачу... Дан текстовый файл. Вывести на экран самую короткую строку текстового файла. заранее спасибо

Составить программу сортировки массива строк по длине строки - C++
Составить программу сортировки массива строк по длине строки.

Составить программу сортировки массива строк по длине строки - C++
Помогите пожалуйста

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
castaway
Эксперт С++
4884 / 3020 / 370
Регистрация: 10.11.2010
Сообщений: 11,078
Записей в блоге: 10
Завершенные тесты: 1
03.11.2015, 22:54 #2
А с помощью метода подойдёт?
0
gru74ik
Модератор
Эксперт CЭксперт С++
4178 / 1806 / 197
Регистрация: 20.02.2013
Сообщений: 4,943
Записей в блоге: 21
03.11.2015, 23:06 #3
Цитата Сообщение от castaway Посмотреть сообщение
с помощью метода
Ереееееетик!

0
castaway
03.11.2015, 23:16
  #4

Не по теме:

Цитата Сообщение от gru74ik Посмотреть сообщение
Ереееееетик!
Я всего то хотел предложить воспользоваться методами объекта класса std::ostream А ты меня сказу к болоболам причислил))

0
Kastaneda
03.11.2015, 23:18
  #5

Не по теме:

Цитата Сообщение от castaway Посмотреть сообщение
методами объекта класса
думаю имелось ввиду, что методы в ООП языках, в С++ у нас функции-члены

0
0x0152
31 / 31 / 8
Регистрация: 23.03.2015
Сообщений: 210
03.11.2015, 23:34 #6
Цитата Сообщение от Christi7 Посмотреть сообщение
Выравнивание строки s слева к длине m
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#define _CHAR '0' 
void Left(char** s,int m){
    int size = strlen(*s) + m + 1;
    char* buffer = new char[size];
    memset(buffer, 0, size);
 
    for (int i = 0; i < m; i++){
        buffer[i] = _CHAR;
    }
 
    strcat_s(buffer, size, *s);
    *s = buffer;
}
0
castaway
03.11.2015, 23:37
  #7

Не по теме:

Цитата Сообщение от Kastaneda Посмотреть сообщение
... что методы в ООП языках, в С++ у нас функции-члены
Ну давай хоть холивар не будем начинать

0
Croessmah
04.11.2015, 00:31
  #8

Не по теме:

Цитата Сообщение от Christi7 Посмотреть сообщение
Кто может написать код ?
Не, это за гранью

0
gromo
04.11.2015, 02:37
  #9

Не по теме:

Цитата Сообщение от 0x0152 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
#define _CHAR '0' 
void Left(char** s,int m){
int size = strlen(*s) + m + 1;
char* buffer = new char[size];
memset(buffer, 0, size);
for (int i = 0; i < m; i++){
 buffer[i] = _CHAR;
 }
strcat_s(buffer, size, *s);
 *s = buffer;
}
Вот посмотрит новичок на такой код, и уразумеет, что именно так и надо писать. Зачем выкладывать такие куски адового безобразия?..
P.s. Критическая концентрация оффтопа на тред2

0
Kerry_Jr
Модератор
Эксперт PHP
2192 / 1988 / 696
Регистрация: 14.05.2014
Сообщений: 5,821
Записей в блоге: 1
Завершенные тесты: 5
04.11.2015, 02:43 #10
Цитата Сообщение от gromo Посмотреть сообщение
C++
1
2
3
4
5
char* buffer = new char[size];
memset(buffer, 0, size);
for (int i = 0; i < m; i++){
*buffer[i] = _CHAR;
*}
5 против 1
C++
1
char* buffer = new char[size]();
1
gromo
370 / 269 / 24
Регистрация: 04.09.2009
Сообщений: 1,214
04.11.2015, 02:49 #11
Цитата Сообщение от Kerry_Jr Посмотреть сообщение
5 против 1
Не говоря уже про мешанину обычных и `_s` функций, возможную утечку памяти, зачем-то введенную директиву для единственного обращения к '\0' и кристальное оформление этой локальной кучки кодеца
1
gru74ik
04.11.2015, 10:38
  #12

Не по теме:

Цитата Сообщение от Kastaneda Посмотреть сообщение
методы в ООП языках, в С++ у нас функции-члены
дооооооо

0
0x0152
31 / 31 / 8
Регистрация: 23.03.2015
Сообщений: 210
04.11.2015, 13:18 #13
Цитата Сообщение от gromo Посмотреть сообщение
Зачем выкладывать такие куски адового безобразия?..
Чтобы вы поправили и указали на ошибки

Добавлено через 23 минуты
C++
1
2
3
4
5
6
7
8
9
10
11
void Left(char** s,int m){
    int size = strlen(*s) + m + 1;
    char* buffer = new char[size]();
 
    for (int i = 0; i < m; i++){
        buffer[i] = '0';
    }
 
    strcat_s(buffer, size, *s);
    *s = buffer;
}
Где еще ошибки?

Добавлено через 4 минуты
Цитата Сообщение от gromo Посмотреть сообщение
возможную утечку памяти
Не подскажите где?

Добавлено через 6 минут
Цитата Сообщение от gromo Посмотреть сообщение
введенную директиву для единственного обращения к '\0'
Не к \0. Он не указал чем заполнить выделенную область, поэтому я и решил вывести знак в директиву, чтобы он сам указал.

Добавлено через 1 минуту
Цитата Сообщение от gromo Посмотреть сообщение
кристальное оформление этой локальной кучки кодеца
Тут в чем проблема?
0
Kerry_Jr
Модератор
Эксперт PHP
2192 / 1988 / 696
Регистрация: 14.05.2014
Сообщений: 5,821
Записей в блоге: 1
Завершенные тесты: 5
04.11.2015, 13:22 #14
удалите, пожалуйста.
0
0x0152
31 / 31 / 8
Регистрация: 23.03.2015
Сообщений: 210
04.11.2015, 13:37 #15
[QUOTE]
char* buffer = new char[size](); // здесь уже все нулевые символы расставлены
for (int i = 0; i < m; i++){ // зачем
buffer[i] = '0'; // этот
} // цикл
Как говорится, что в лоб, что по лбу, что о стенку гороховый суп.
введенную директиву для единственного обращения к '\0'
Не к \0. Он не указал чем заполнить выделенную область, поэтому я и решил вывести знак в директиву, чтобы он сам указал.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.11.2015, 13:37
Привет! Вот еще темы с ответами:

Определить строки в файле, содержащие максимальную по длине подстроку-палиндром - C++
Задан текстовый файл input.txt. Требуется определить строки этого файла, содержащие максимальную по длине подстроку-палиндром. Если таких...

Выравнивание строки - C++
Помогите пожалуйста написать функцию, которая выравнивает строку по левому краю до заданной длинны.

Необходимо изменить строку так, чтобы длина строки стала равна заданной длине - C++
Дана строка текста, в котором нет начальных и конечных пробелов. Необходимо изменить ее так, чтобы длина строки стала равна заданной длине...

Одну строку инициализировать в программе, другую-ввести с клавиатуры. Сравнить данные строки по длине. - C++
Помогите пожалуйса написаль код программы, скоро сессия, а работа не сдана, потому что я не могу её написать..... Задание: Одну строку...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
04.11.2015, 13:37
Ответ Создать тему
Опции темы

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