С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/47: Рейтинг темы: голосов - 47, средняя оценка - 4.57
1 / 1 / 1
Регистрация: 14.11.2017
Сообщений: 10
1

Ошибка № Е0142 Выражение должно иметь тип указателя на объект

16.05.2018, 13:30. Показов 8856. Ответов 2

Author24 — интернет-сервис помощи студентам
Наткнулся на проблему при написании программы. Не знаю как решить

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
37
38
39
#include "stdafx.h"
#include <iostream>
#include <array>
#include <string>
#include <Windows.h>
#include <cstdio>
#include <vector>
#include <ctime>
 
using namespace std;
struct cars
{
    string name;// Всё норм
    int year;// Как я понял причина ошибки примерно здесь
};
int main()
{
    int count;
    setlocale(LC_ALL, "RU");
    cout << "Введите кол-во машин: ";
    cin >> count;
    cars *car = new cars[count];
    for(int i = 0; i < count;i++)
    {
        cout << "Введите название машины: ";
        cin >> car->name[i];// Всё ок
        cout << "Введите год машины: ";
        cin >> car->year[i];// E0142 Выражение должно иметь тип указателя на объект!
        cout << "Машина №" << i + 1 << " занесена в список" << endl;
    }
 
    cout << "Готово! Вот список машин: " << endl;
    for(int i = 0;i < count; i++)
    {
        cout << "Машина №" << i + 1 << ':' << ' ';
        cout << "Название: " << car->name[i] << ' ';// Всё ок
        cout << "Год выпуска: " << car->year[i] << endl;// E0142 Выражение должно иметь тип указателя на объект!
    }
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.05.2018, 13:30
Ответы с готовыми решениями:

Ошибка! выражение должно иметь тип указателя на объект
Строка 41 ошибка #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;math.h&gt; #include...

Ошибка выражение должно иметь тип указателя на объект
Как устранить проблему? #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;stdlib.h&gt;...

Выражение должно иметь тип указателя на объект
Вроде все правильно на компилятор ругается на функции fill_b и show_b подскажите в чем проблема ...

Выражение должно иметь тип указателя на объект
Нужно поменять строки массива местами, только вот компилятор ругается на temt - выражение должно...

2
Эксперт .NET
5877 / 4754 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
16.05.2018, 13:36 2
C++
1
cin >> car[i].year;
1
1 / 1 / 1
Регистрация: 14.11.2017
Сообщений: 10
16.05.2018, 13:36  [ТС] 3
Всё проблема решена. Не надо писать решение
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
37
38
39
#include "stdafx.h"
#include <iostream>
#include <array>
#include <string>
#include <Windows.h>
#include <cstdio>
#include <vector>
#include <ctime>
 
using namespace std;
struct cars
{
    string name;// Всё норм
    int year;// Как я понял причина ошибки примерно здесь
};
int main()
{
    int count;
    setlocale(LC_ALL, "RU");
    cout << "Введите кол-во машин: ";
    cin >> count;
    cars *car = new cars[count];
    for(int i = 0; i < count;i++)
    {
        cout << "Введите название машины: ";
        cin >> car[i].name;// Всё ок
        cout << "Введите год машины: ";
        cin >> car[i].year;// E0142 Выражение должно иметь тип указателя на объект!
        cout << "Машина №" << i + 1 << " занесена в список" << endl;
    }
 
    cout << "Готово! Вот список машин: " << endl;
    for(int i = 0;i < count; i++)
    {
        cout << "Машина №" << i + 1 << ':' << ' ';
        cout << "Название: " << car[i].name << ' ';// Всё ок
        cout << "Год выпуска: " << car[i].year << endl;// E0142 Выражение должно иметь тип указателя на объект!
    }
}
Добавлено через 29 секунд
Спасибо! Просто студия мне сама исправила
0
16.05.2018, 13:36
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.05.2018, 13:36
Помогаю со студенческими работами здесь

Выражение должно иметь тип указателя на объект
Не могу понять где я ошибся, на j ругается. // lalaba3.cpp: определяет точку входа для...

9 строка. выражение должно иметь тип указателя на объект
#include &quot;pch.h&quot; #include &lt;iostream&gt; using namespace std; const int razm = 100; void z0(int...

Ошибка: "выражение должно иметь тип указателя на объект"
#include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;locale.h&gt; #define N 10 using namespace std;...

Ошибка в программе дешифрования: "выражение должно иметь тип указателя на объект"
Возникают ошибки : 5 IntelliSense: выражение должно иметь тип указателя на...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru