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

Как сделать указатель на массив - C++

Восстановить пароль Регистрация
 
sandrwe
0 / 0 / 0
Регистрация: 08.02.2014
Сообщений: 25
11.02.2014, 00:10     Как сделать указатель на массив #1
Здрасти. Как мне сделать указатель на массив:
C++
1
2
3
4
5
6
7
8
9
10
string stud[9][5]=
{{"49000", "Eddy", "Vedder", "dzienne", "19"},
{"49001", "Roger", "Waters", "wolny tok", "18"},
{"49002", "Jimmy", "Page", "dzienne", "20"},
{"49003", "Jim", "Morrison", "dzienne", "21"},
{"49004", "Jimi", "Hendrix", "dzienne", "19"},
{"49005", "Layne", "Staley", "dzienne", "17"},
{"49006", "Jerry", "Cantrell", "awans", "17"},
{"49007", "David", "Gilmour", "dzienne", "19"},
{"49008", "Dimebag", "Darrell", "dzienne", "17"}};
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.02.2014, 00:10     Как сделать указатель на массив
Посмотрите здесь:

Как передать массив через указатель? C++
C++ как сделать правильно указатель на первую функцию
Сделать указатель на указатель NULL C++
Реализовать 3 функции, каждая из которых принимает указатель на массив и количество элементов и возвращает указатель на новый массив. C++
Нужно сделать указатель на динамический двумерний массив C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
mariko_11
2 / 2 / 1
Регистрация: 11.03.2013
Сообщений: 64
11.02.2014, 00:38     Как сделать указатель на массив #2
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
string stud[9][5]=
    {{"49000", "Eddy", "Vedder", "dzienne", "19"},
    {"49001", "Roger", "Waters", "wolny tok", "18"},
    {"49002", "Jimmy", "Page", "dzienne", "20"},
    {"49003", "Jim", "Morrison", "dzienne", "21"},
    {"49004", "Jimi", "Hendrix", "dzienne", "19"},
    {"49005", "Layne", "Staley", "dzienne", "17"},
    {"49006", "Jerry", "Cantrell", "awans", "17"},
    {"49007", "David", "Gilmour", "dzienne", "19"},
    {"49008", "Dimebag", "Darrell", "dzienne", "17"}}, (*sptr)[5]=stud;
Вот тут похожую штуку разбирают Как корректно создать указатель на двумерный массив?

Добавлено через 12 минут
Во ещё http://edu-support.ru/?statya=244
sandrwe
0 / 0 / 0
Регистрация: 08.02.2014
Сообщений: 25
11.02.2014, 00:38  [ТС]     Как сделать указатель на массив #3
Мне надо указатели только на горизонтальные строки. Такое можно сделать?
mariko_11
2 / 2 / 1
Регистрация: 11.03.2013
Сообщений: 64
11.02.2014, 00:41     Как сделать указатель на массив #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++ (Qt)
1
2
3
4
string *studptr;
    studptr=stud[0];
 
    cout << studptr[1]<<endl;
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
11.02.2014, 03:19     Как сделать указатель на массив #5
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
#include <iostream>
#include <string>
using namespace std;
 
int main()
{
    string stud[9][5]=
    {
        {"49000", "Eddy", "Vedder", "dzienne", "19"},
        {"49001", "Roger", "Waters", "wolny tok", "18"},
        {"49002", "Jimmy", "Page", "dzienne", "20"},
        {"49003", "Jim", "Morrison", "dzienne", "21"},
        {"49004", "Jimi", "Hendrix", "dzienne", "19"},
        {"49005", "Layne", "Staley", "dzienne", "17"},
        {"49006", "Jerry", "Cantrell", "awans", "17"},
        {"49007", "David", "Gilmour", "dzienne", "19"},
        {"49008", "Dimebag", "Darrell", "dzienne", "17"}
    };
    
    string *ps = &stud[0][0]; // ps - указатель на массив 
    
    cout << *ps << endl;
    cout << *++ps << endl;
    cout << *++ps << endl;
    cout << *++ps << endl;
    cout << *++ps << endl;
 
}
Добавлено через 2 часа 36 минут
Цитата Сообщение от sandrwe Посмотреть сообщение
Мне надо указатели только на горизонтальные строки. Такое можно сделать?
Например:
C++
string *ps0 = &stud[0][0]; // для первой строки
string *ps1 = &stud[1][0]; // для второй строки
string *ps2 = &stud[2][0]; // для третьей строки
string *ps3 = &stud[3][0]; // для четвертой строки
//...
string *ps7 = &stud[7][0]; // для восьмой строки
string *ps8 = &stud[8][0]; // для девятой строки
Yandex
Объявления
11.02.2014, 03:19     Как сделать указатель на массив
Ответ Создать тему
Опции темы

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