Вопросы по теме 'variable-length-array'

Безопасно ли использовать массивы переменной длины?
Меня беспокоят массивы переменной длины. Когда я хочу выделить массив динамически, я получу ноль, если невозможно выделить достаточно памяти, и я могу правильно отреагировать на это в своей программе. С массивом переменной длины я не получаю эту...
3911 просмотров
schedule 19.08.2022

ISO C90 запрещает массив переменной длины
Я динамически вычисляю размер массива. Что-то типа: void foo(size_t limit) { char buffer[limit * 14 + 1]; } Но только компилятор GCC говорит: error: ISO C90 forbids variable length array ‘buffer’ поиск по SO я нашел этот ответ :...
24454 просмотров
schedule 14.02.2022

std :: array переменной длины, например
Поскольку мои обычно используемые компиляторы C ++ допускают массивы переменной длины (например, массивы в зависимости от размера времени выполнения), мне интересно, есть ли что-то вроде std::array с переменным размером? Конечно, std::vector...
22280 просмотров
schedule 15.10.2022

VLA и побочный эффект в операнде sizeof
Я знаю, что sizeof никогда не оценивает свой операнд, за исключением конкретного случая, когда указанный операнд является VLA. Или я думал , что знаю. void g(int n) { printf("g(%d)\n", n); } int main(void) { int i = 12; char...
468 просмотров

Инициализация структуры с массивом переменной длины в C
Кто-нибудь знает, есть ли способ инициализировать структуру, содержащую массив переменной длины, без предварительной инициализации массива в отдельной переменной (и без использования malloc)? Моя структура выглядит так: struct my_struct {...
1644 просмотров
schedule 11.08.2022

как передать динамический массив 2d в функцию без использования указателей?
Я пробовал это, но это не работает! может ли кто-нибудь помочь мне, пожалуйста, это очень важно :( #include <iostream> using namespace std; int a[100][100]; void read(int a[][100],int n) { int i,j; for(i=0;i<n;i++)...
348 просмотров

Когда и как оцениваются VLA в выражениях sizeof?
Стандарт C имеет этот язык: 6.5.3.4 Операторы sizeof и _Alignof Семантика Оператор sizeof возвращает размер (в байтах) своего операнда, который может быть выражением или именем типа в скобках. Размер определяется типом операнда....
101 просмотров