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

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

Войти
Регистрация
Восстановить пароль
 
GROM32RUS
2 / 2 / 0
Регистрация: 02.12.2013
Сообщений: 107
#1

Функция получает массив указателей на строки и возвращает строку в динамической памяти, содержащую объединенный текст из входных строк - C++

23.12.2013, 19:23. Просмотров 341. Ответов 2
Метки нет (Все метки)

Функция получает массив указателей на строки и возвращает строку в динамической памяти, содержащую объединенный текст из входных строк.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.12.2013, 19:23     Функция получает массив указателей на строки и возвращает строку в динамической памяти, содержащую объединенный текст из входных строк
Посмотрите здесь:

Задача: Функция получает одномерный массив и возвращает количество чисел с суммой цифр больше 20. Почему не работает? - C++
#include<iostream.h> #include<conio.h> #include<stdlib.h> int main() { const int N=10; int A; for (int i=0;i<N;i++) cin...

Конкатенация строк: Зачем строки создаются в динамической памяти? - C++
Есть программа, которая делает конкатенацию строк. #include <iostream> using namespace std; char* Concatenate(char* string1, char*...

Функция возвращает строку (или указатель на начало строки) - C++
Подскажите пожалуйста. Застрял на тривиальной задачке. Никак не могу добится чтобы функция возвращала корректно строку.(правильнее наверное...

Как сделать функцию которая получает цифру и возвращает строку? - C++
Лучше всего наглядный пример, пожалуйста. :) Благодарю всех заранее.

Функция alltrim удаляет из строки начальные и конечные пробелы и возвращает указатель на преобразованную строку - C++
Дали задание в ВУЗе. Назначение программы: Функция alltrim удаляет из строки начальные и конечные пробелы и возвращает указатель на...

Функция, которая получает в качестве параметров два целых числа и возвращает сумму - C++
Написать функцию, которая получает в качестве параметров два целых числа и возвращает сумму чисел из диапазона между ними Помогите:-| ...

Осуществить вывод строк из файла, используя массив указателей на эти строки - C++
"Написать программу, которая считывает текст из файла и выводит на экран только предложения, не содержащие запятых. " вывод надо...

Напишите функцию, которая получает на вход строку цифр, и возвращает соответствующее целочисленное значение - C++
Напишите функцию atoi (), которая получает строку цифр, и возвращает соответствующее int. Например, atoi ("123") - это 123

Деревья С++ (функция, которая получает указатель на корень дерева и возвращает длину самой длинной ветки на дереве) - C++
Здравствуйте! Помогите, пожалуйста, в написании функции ,которая получает указатель на корень дерева и возвращает длинну самой длинной...

Обращение к динамической структуре через массив указателей - C++
При попытке обратиться к элементу динамической структуры через связанный с ним элемент массива указателей выдаёт ошибку (со строчки 73): ...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
anmartex
...
1701 / 1194 / 495
Регистрация: 12.02.2013
Сообщений: 1,978
23.12.2013, 19:32     Функция получает массив указателей на строки и возвращает строку в динамической памяти, содержащую объединенный текст из входных строк #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <iostream>
#include <cstring>
 
char* Merge(const char* list[], unsigned count) {
    unsigned length = 0;
 
    for (unsigned i = 0; i < count; ++i) {
        length += strlen(list[i]);
    }
 
    if (length == 0) {
        return NULL;
    }
 
    char* result = new char[length + 1];
    *result = 0;
 
    for (unsigned i = 0; i < count; ++i) {
        strcat(result, list[i]);
    }
 
    return result;
}
 
int main() {
 
    const char* list[] = {"one", "two", "three"};
 
    char* result = Merge(list, 3);
 
    std::cout << result << std::endl;
 
    delete[] result;
 
    return 0;
}
GROM32RUS
2 / 2 / 0
Регистрация: 02.12.2013
Сообщений: 107
23.12.2013, 19:38  [ТС]     Функция получает массив указателей на строки и возвращает строку в динамической памяти, содержащую объединенный текст из входных строк #3
Цитата Сообщение от anmartex Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <iostream>
#include <cstring>
 
char* Merge(const char* list[], unsigned count) {
    unsigned length = 0;
 
    for (unsigned i = 0; i < count; ++i) {
        length += strlen(list[i]);
    }
 
    if (length == 0) {
        return NULL;
    }
 
    char* result = new char[length + 1];
    *result = 0;
 
    for (unsigned i = 0; i < count; ++i) {
        strcat(result, list[i]);
    }
 
    return result;
}
 
int main() {
 
    const char* list[] = {"one", "two", "three"};
 
    char* result = Merge(list, 3);
 
    std::cout << result << std::endl;
 
    delete[] result;
 
    return 0;
}
спасибо,я пунктом форума ошибся=((
в сишник надо=(
Yandex
Объявления
23.12.2013, 19:38     Функция получает массив указателей на строки и возвращает строку в динамической памяти, содержащую объединенный текст из входных строк
Ответ Создать тему
Опции темы

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