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

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

Войти
Регистрация
Восстановить пароль
 
The_bolT
70 / 70 / 1
Регистрация: 22.01.2013
Сообщений: 231
#1

string - C++

03.03.2013, 13:23. Просмотров 198. Ответов 9
Метки нет (Все метки)

Возможно чтобы было вот такое подобное? Т.е. чтобы под каждым индексом было по 2 элемента.
str[0] ="aa";
str[1] ="ff";
str[2] = "awfd";
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.03.2013, 13:23     string
Посмотрите здесь:

C++ <string.h>
Отличие string и String C++
C++ String.h
string = define + string ; C++
string C++
string C++
C++ string
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Silvestr1994
 Аватар для Silvestr1994
27 / 27 / 1
Регистрация: 26.10.2012
Сообщений: 101
03.03.2013, 13:26     string #2
да ето возможно и не только два
C++
1
char *str[20] или char str[20][20]
denike
0 / 0 / 0
Регистрация: 03.03.2013
Сообщений: 7
03.03.2013, 13:28     string #3
Цитата Сообщение от Silvestr1994 Посмотреть сообщение
да ето возможно и не только два
но как???
The_bolT
70 / 70 / 1
Регистрация: 22.01.2013
Сообщений: 231
03.03.2013, 13:30  [ТС]     string #4
Я тоже думаю что невозможно, если только иметь vector<string> то тогда да. Вроде как string тоже массив и под каждым индексом должен храниться только один элемент, не так ли?
denike
0 / 0 / 0
Регистрация: 03.03.2013
Сообщений: 7
03.03.2013, 13:34     string #5
Цитата Сообщение от The_bolT Посмотреть сообщение
Я тоже думаю что невозможно, если только иметь vector<string> то тогда да. Вроде как string тоже массив и под каждым индексом должен храниться только один элемент, не так ли?
На практике это нереально. Стринг - это массив, но массив, состоящий из символов: то есть в одной ячейке должен хранится лишь один символ. Выше сказанное - это тоже, что в массив целого типа запихнуть константу пи.
Silvestr1994
 Аватар для Silvestr1994
27 / 27 / 1
Регистрация: 26.10.2012
Сообщений: 101
03.03.2013, 13:37     string #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>
#include <iostream>
 
using namespace std;
 
int main()
{
    char *str[20];
    str[0] = ("poplpo");
    str[1] = ("asdjhasdbdkh");
    cout<<str[0]<<endl;
    cout<<str[1]<<endl;
    return 0;
}
Добавлено через 2 минуты
прошу вот все записивает
denike
0 / 0 / 0
Регистрация: 03.03.2013
Сообщений: 7
03.03.2013, 13:38     string #7
Цитата Сообщение от Silvestr1994 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>
#include <iostream>
 
using namespace std;
 
int main()
{
    char *str[20];
    str[0] = ("poplpo");
    str[1] = ("asdjhasdbdkh");
    cout<<str[0]<<endl;
    cout<<str[1]<<endl;
    return 0;
}
Добавлено через 2 минуты
прошу вот все записивает
Так str в данном случае выходит массивом, а не строкой!
Silvestr1994
 Аватар для Silvestr1994
27 / 27 / 1
Регистрация: 26.10.2012
Сообщений: 101
03.03.2013, 13:41     string #8
хорошо ну а он как написал:
str[0] ="aa";
str[1] ="ff";
str[2] = "awfd";
вот ето же масив)))
denike
0 / 0 / 0
Регистрация: 03.03.2013
Сообщений: 7
03.03.2013, 13:44     string #9
Цитата Сообщение от Silvestr1994 Посмотреть сообщение
хорошо ну а он как написал:
str[0] ="aa";
str[1] ="ff";
str[2] = "awfd";
вот ето же масив)))
ахахах) Действительно) Но если суть вопроса была о типе стринг, тогда ответ нет)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.03.2013, 13:53     string
Еще ссылки по теме:

C++ string and !=
C++ string на с++
Ошибка со string: "идентификатор "string" не определен" C++
Преобразование string* в string C++
C++ String и IF

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

Или воспользуйтесь поиском по форуму:
palva
 Аватар для palva
2439 / 1661 / 208
Регистрация: 08.06.2007
Сообщений: 6,579
Записей в блоге: 4
03.03.2013, 13:53     string #10
Просто не очень понятен вопрос, и к тому же в заголовке написано string
Если str описан как
C++
1
string str[3];
то все присваивания возможны. Недолго набросать код и убедиться.
Если же str строка и имеет достаточную длину, например
C++
1
string str="123456";
То можно присвоить символ, но строку присвоить невозможно, даже односимвольную
C++
1
2
str[3] ='a';
str[3] ="a"; // ошибка компиляции
Но так делать все равно не надо, поскольку при недостаточной длине строки получите ошибку периода выполнения. string имет свои безопасные методы работы с ним.
Yandex
Объявления
03.03.2013, 13:53     string
Ответ Создать тему
Опции темы

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