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

Почему нельзя так объявить двумерный массив? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Проблемы с классами при поиске обратной матрицы http://www.cyberforum.ru/cpp-beginners/thread835448.html
Доброго времени суток! Задача такова. Необходимо создать класс, который создавал бы матрицу заданного размера (квадратную), рассчитывал её определитель и находил обратную матрицу. Нашёл необходимые функции здесь и вот здесь. После того, как вставил код в описание класса, обратная матрица стала рассчитываться некорректно. Тестировал на матрице размером 3х3. Последний столбец рассчитывается...
C++ 'лементарная графика в dev cpp Подскажите как поменять цвет(заливку, а не контур(линию)) квадрата (вписанного в окружность-вдруг это важно)с использованием graphics.h (среда- dev cpp)? http://www.cyberforum.ru/cpp-beginners/thread835437.html
Изменение части текста C++
Здравствуйте, кто-нибудь знает с помощью какого инструмента в Windows Form Application (Label, TextBox и т.д.) можно обеспечить изменение цвета, или какое либо другое форматирование только части текста (одного символа, или слова). и как это можно сделать.. Заранее спасибо!)
C++ Ошибка после закрытия формы
Как можно избавиться от этой ошибки?
C++ Раннее и позднее связывание http://www.cyberforum.ru/cpp-beginners/thread835406.html
Вот компилятор статическую функцию как бы компилирует ранним связыванием, а динамическую - поздним. Во многих учебниках говорят, что если есть функция раннего связывания, то её адрес в памяти известен на этапе компиляции. Я чё то не могу понять, как может быть известен адрес функции на этапе компиляции. Нет, конечно понятно, что Ahead компиляторы сразу преобразуют исходный код в машинный код...
C++ м. Симпсона. Не выводит на экран значение интеграла Здравствуйте! подскажите пожалуйста, почему у меня не выводит значение "I1" на экран. ввожу а и б, дальше кол-во разбиений, после точность.. и все встает( __________________ #include <iostream> #include <math.h> using namespace std; подробнее

Показать сообщение отдельно
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
12.04.2013, 11:12     Почему нельзя так объявить двумерный массив?
Цитата Сообщение от Simpson_ Посмотреть сообщение
Непонятно какой смысл этой ошибки, и от чего хочет уберечь компилятор?...
#include <iostream>
using std::cout;
using std::endl;
void bucketSort(int[], const int);
int main(void)
{
* *const int size=9;
* *int array[size]={13, 2, 10, 4, 5, 6, 110, 8, 999};
Этот массив автоматический, он расоложен в стеке, если ты попытаешься увеличить size, то массив вырастет на соседний элемент стека, возможно на локальное данное другой функции, или на адрес возврата. Переменный размер может быть только у динамического массива, располагаемого в куче.

Добавлено через 3 минуты
Цитата Сообщение от Simpson_ Посмотреть сообщение
Jupiter, т.е. получается что функция bucketSort выполняется раньше чем main?
A почему тогда вариант без инициализации работает?
Код C++
1
int tempArray[10][size];
Присваивание работает на этапе исполнения, но правый его операнд формируется на этапе написания текста и транслируется на этапе компиляции. В результате, когда компилятор разбирал твою инициализацию, он ещё не знал, что в этом массиве 9 элементов, он ведь не умеет привлекать к анализу программы разум.
 
Текущее время: 09:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru