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

Почему компилятор выдает ошибку? - C++

Восстановить пароль Регистрация
 
booogabooo
5 / 1 / 0
Регистрация: 04.12.2013
Сообщений: 50
09.02.2014, 20:38     Почему компилятор выдает ошибку? #1
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
40
41
42
43
44
45
#include <stdio.h>
#include <clocale>
 
typedef enum{
    COUNT, POUNDS, PINTS
}unit_of_measure;
    
typedef union{
    short count;
    float weight;
    float volume;
}quantity;
 
typedef struct{
    const char *name;
    const char *country;
    quantity amount;
    unit_of_measure unit;
}fruit_order;
 
void display(fruit_order order){
    printf("Ýòîò Г§Г*ГЄГ*Г§ ñîäåðæèò ");
    if(order.unit == PINTS){
        printf("%2.2f ГЇГЁГ*ГІ %s\n", order.amount.volume, order.name);
    }
    else if(order.unit == POUNDS){
        printf("%2.2f ГґГіГ*òîâ %s\n", order.amount.weight, order.name);
    }
    else
        printf("%i %s", order.amount.count, order.name);
} 
 
int main()
{
    setlocale(LC_ALL, "russian");
    fruit_order apples = {"ÿáëîê", "ÈñïГ*Г*ГЁГї", .amount.count=144, COUNT};
    fruit_order strawberry = {"êëóáГ*ГЁГЄГЁ", "ÈñïГ*Г*ГЁГї", .amount.weight=17.6, POUNDS};
    fruit_order oj = {"Г*ïåëüñèГ*îâîãî ñîêГ*", "ГЂГ*ãèëÿ", .amount.volume=10.5, PINTS};
    
    display(apples);
    display(strawberry);
    display(oj);
    
    return 0;
}
Компилятору не нравится .(ТОЧКА) перед .amount.count=144
В чем проблема? Я по сути объявляю значение для поля count


Ошибку понял. Так поля иннициализируются в си...А как можно сделать в с++?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.02.2014, 20:38     Почему компилятор выдает ошибку?
Посмотрите здесь:

C++ wxDEV-C++ компилятор выдает ошибку
Компилятор выдает ошибку при создании списка C++
Компилятор выдает ошибку C++
C++ компилятор выдает ошибку
Компилятор выдает ошибку app.exe has triggered a breakpoint C++
C++ LoadKeyboardLayout - компилятор выдает ошибку
C++ Компилятор Visual C++ 2008 выдает ошибку
Компилятор выдает ошибку: [Error] ld returned 1 exit status C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
09.02.2014, 21:02     Почему компилятор выдает ошибку? #2
Как вариант
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int main()
{
    quantity am1,am2,am3;
    setlocale(LC_ALL, "russian");
    am1.count=144;
    fruit_order apples = {"яблок", "Испания", am1, COUNT};
    am2.weight = 17.6;
    fruit_order strawberry = {"клубники", "Испания",am2 , POUNDS};
    am3.volume = 10.5;
    fruit_order oj = {"апельсинового сока", "Ангиля", am3, PINTS};
    display(apples);
    display(strawberry);
    display(oj);
    std::system("pause"); 
    return 0;
}
Yandex
Объявления
09.02.2014, 21:02     Почему компилятор выдает ошибку?
Ответ Создать тему
Опции темы

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