9 / 9 / 1
Регистрация: 22.02.2011
Сообщений: 198
|
|||||||||||
1 | |||||||||||
Ошибка размера массива, массив элемент структуры10.04.2023, 22:31. Показов 509. Ответов 8
Метки нет (Все метки)
Я не создавал, а конвертировал проект из ms vs 2012 в ms vs 2019
1. я объявил структуру в struct.h, создал экземпляр структуры в другом struct.cpp - его я подключил в проект через solution explorer.
Вопрос 1 - появляется - ошибка "константу" не видит структура, хотя это работало в ms vs 2012. Вопрос 2 - если msize сделать не как #define msize а как const int msize как ее подключить из другого файла, кроме объявления в main файле (файле имени проекта)? Вопрос 3 - Где есть подробная инструкция для ms vs по раздельной компиляции?
0
|
10.04.2023, 22:31 | |
Ответы с готовыми решениями:
8
Даны два массива A и B одинакового размера N. Сформировать новый массив C того же размера, каждый элемент которого равен Даны два массива одинакового размера. Создать третий массив такого же размера, каждый элемент которого равен 11, есл Дан массив размера N. После каждого отрицательного элемента массива вставить элемент с нулевым значением. через массив Дан массив А размера N. Сформировать новый массив В того же размера по следующему правилу: элемент Вк равен сумме элемен |
фрилансер
5848 / 5379 / 1103
Регистрация: 11.10.2019
Сообщений: 14,380
|
||||||||||||||||
11.04.2023, 06:17 | 2 | |||||||||||||||
лучше всего переделать дефайн на
Добавлено через 2 минуты а если эта константа нужна только в самой структуре, то вообще достаточно так сделать
1
|
Вездепух
12793 / 6670 / 1795
Регистрация: 18.10.2014
Сообщений: 16,889
|
|
11.04.2023, 06:25 | 3 |
Вы либо что-то выдумываете, либо недоговариваете. Где в вашем вопросе точные цитаты сообщений об ошибках?
Вопрос не ясен. Вы же сами сказали, что константа будет определена в "define.h" - вот уже и подключили. Ничего менять не надо. Нигде. Это слишком обширная тема.
1
|
9 / 9 / 1
Регистрация: 22.02.2011
Сообщений: 198
|
|
11.04.2023, 18:48 [ТС] | 4 |
Алексей1153, Мне нужна эта константа только из другого файла. Вообще как использовать константы из других файлов?
TheCalligrapher, Я уже подключил файл define(там я написал в примере) константа все равно не видна хотя это работало в vs2012, ошибка вот " error C2143: syntax error: missing ']' before ';' "
0
|
Вездепух
12793 / 6670 / 1795
Регистрация: 18.10.2014
Сообщений: 16,889
|
|
11.04.2023, 19:01 | 5 |
Еще раз: приводите реальный код целиком. Ваши рассказы о "магическом" и необъяснимом поведении компилятора бесполезны.
1
|
9 / 9 / 1
Регистрация: 22.02.2011
Сообщений: 198
|
|||||||||||||||||||||
11.04.2023, 22:21 [ТС] | 6 | ||||||||||||||||||||
TheCalligrapher, вот весь мой тестовый проект.
Файл названия проекта.
Error C2143 syntax error: missing ']' before ';' WindowsProject1 struct.h 5 Error C2059 syntax error: ']' WindowsProject1 struct.h 5 Error C2238 unexpected token(s) preceding ';' WindowsProject1 struct.h 5
0
|
Вездепух
12793 / 6670 / 1795
Регистрация: 18.10.2014
Сообщений: 16,889
|
|
12.04.2023, 00:38 | 8 |
Сообщение было отмечено korez как решение
Решение
Что здесь делает эта точка с запятой? Зачем вы ее сюда вписали? Как это должно было работать?
И зачем вы нам рассказывали сказки о том, что это якобы работало в более ранней версии? Также: где код с const int ?
1
|
9 / 9 / 1
Регистрация: 22.02.2011
Сообщений: 198
|
|
12.04.2023, 20:50 [ТС] | 9 |
TheCalligrapher, да да все заработало - просто не заметил этот момент с ";", а файл define мне пришлось заново создавать он не от vs2012 проекта я просто помню что там я написал define определения, до этого я редко использовал define.
Началось это вообще с того, что я хотел в структуре размер массива определить как константу из другого файла. Вот еще один вопрос как это сделать?
0
|
12.04.2023, 20:50 | |