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

Указатель на структуру - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 5.00
AKruglyak
0 / 0 / 0
Регистрация: 18.02.2012
Сообщений: 24
23.03.2012, 14:13     Указатель на структуру #1
Как с помощью переменной указателя на тип свой структуры вывести на экран значение полей в экземпляре?
Написал вот что:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <string>
using namespace std;
typedef struct {
      string s1,s2;
      int a;
       }type;
int main(){
     type s1;
    s1.s1="first";
    s1.s2="second";
    s1.a=4;
    cout<<s1.s1<<' '<<s1.s2<<' '<<s1.a;
    s1.s1+=" two";
    s1.s2+=" one";
    s1.a+=5;
    type* s=&s1;
    cout<<s;
    system("PAUSE");
    }
Но выводится адрес, а не само значение, как это изменить?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.03.2012, 14:13     Указатель на структуру
Посмотрите здесь:

Указатель void на структуру C++
C++ указатель на структуру
C++ указатель на структуру
указатель на структуру C++
Создать указатель на структуру C++
Создать указатель на структуру C++
C++ Указатель на не объявленную структуру
Указатель на структуру C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dimcoder
Полярный
 Аватар для dimcoder
449 / 422 / 66
Регистрация: 11.09.2011
Сообщений: 1,108
23.03.2012, 14:16     Указатель на структуру #2
Цитата Сообщение от AKruglyak Посмотреть сообщение
cout<<s;
не, не так. просто пишешь
C++
1
cout << s -> s1 << endl;
И т.п. Просто стрелка вместо точки, если используешь указатель.
stawerfar
 Аватар для stawerfar
141 / 55 / 4
Регистрация: 14.12.2010
Сообщений: 347
Записей в блоге: 1
23.03.2012, 14:17     Указатель на структуру #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <string>
using namespace std;
typedef struct {
      string s1,s2;
      int a;
       }type;
int main(){
     type s1;
    s1.s1="first";
    s1.s2="second";
    s1.a=4;
    cout<<s1.s1<<' '<<s1.s2<<' '<<s1.a;
    s1.s1+=" two";
    s1.s2+=" one";
    s1.a+=5;
    type* s=&s1;
    cout<<s->s1<<s->s2<<s->a<<endl;
    system("PAUSE");
    }
Yandex
Объявления
23.03.2012, 14:17     Указатель на структуру
Ответ Создать тему
Опции темы

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