C/C++

В чем ошибка?

#include <iostream>
#include <time.h>
#include <stdlib.h>

using namespace std;

//глобальные константы - размер числа(массив из цифр)
const int size = 4;
//глобальный массив, хранящий загаданное число
int number[size]{};

int main()
{
system("chcp 1251");
system("cls");

}
Компилятор просто иногда тупит, когда в качестве имени для своих переменных выбираешь уже существующие (size - метод многих контейнеров). Хотя тут и трудно перепутать)
Нужно либо другое имя указывать например size_arr
или явно указывать пространство имен:
int number [::size]
UPD: Вы явно задали использование using std. Оказывается в этом пространстве есть функция std::size.
Shuhrat Tuev
Shuhrat Tuev
51 416
Лучший ответ
Паша Букатый То что он метод - не должно влиять. Хотя хз. Может баг) Это же мелкософт)
size не является однозначным, так вроде внизу и написано
У меня твой код не ругался, но попробовать можно и так const int SIZE = 4;
а нет, так через #define SIZE 4
tanogg
tanogg
96 009
нельзя статическому массиву задавать размер с помощью переменной. Задефайнь константу.

#define size 4
ошибка в хреновом качестве
Makasi Cavasaci
Makasi Cavasaci
7 589
Ошибка в том, что программа, как её видно из данного кусочка кода, ничего не делает, кроме вызова нескольких системных функций. Необходимо добавить код для заполнения массива `number` загаданным числом, иначе программа не будет работать.

Также не стоит использовать конструкцию `using namespace std` везде в программе, а только в начале.

Вот исправленный код:

```
#include <iostream>
#include <time.h>
#include <stdlib.h>

using namespace std;

// глобальные константы - размер числа(массив из цифр)
const int size = 4;

// глобальный массив, хранящий загаданное число
int number[size] = {};

int main()
{
system("chcp 1251");
system("cls");

srand(time(nullptr)); // инициализация генератора случайных чисел

// заполняем массив number случайными числами от 0 до 9
for (int i = 0; i < size; i++) {
number[i] = rand() % 10;
}

// выводим загаданное число для отладки
for (int i = 0; i < size; i++) {
cout << number[i] << " ";
}

return 0;
}
```

Этот код заполнит массив `number` случайными цифрами от 0 до 9 и выведет его на экран для отладки. Чтобы правильно работать с загаданным числом, нужно добавить код для ввода и проверки ввода пользовательских чисел, который будет зависеть от задачи.
Shuhrat Tuev Чуваааак, chatGPT иногда несет ересь) Будешь увлекаться - забанют.
Нет ошибки, все компилируется компилятором g++
Но вообще size это такое слово, что оно уже может быть где-то определено в заголовочных файлах компилятора
Так переменные не называют
Vardan Eric
Vardan Eric
380