| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Как отслеживать значения матрицы |
| Автор: Mr_Nuke 29.3.2011, 16:09 | ||
| Всем привет! Пытаюсь пересесть с дельфи, на C/С++ Столкнулся с такой проблемой. К примеру, с матрицами, в дельфи, если выполнять программу пошагово, в разделе watch вводишь A[1], и у тебя через запятую выводятся все элементы первой строки. У меня Visual Studio 5.0. Можно ли тут сделать так же?? У меня получилось посмотреть значение только одного элемента :( И еще вопрос, объявляю матрицу int A[2][3]. В процессе пошагово выполнения навожу на нее курсор, и вылезает окошко
тоесть, как будто под столбцы память не выделилась. пишу A[1][1] = 5; В разделе Watch прописываю A[1][1]. Выдает ошибку error: index '1' out of bound for pointer/array 'A' |
| Автор: borisbn 29.3.2011, 18:32 |
Есть вероятность, что как работать с IDE 1996-го года тебе здесь не смогут помочь а из общих соображений: тебе нужно учитывать, что все массивы в Си начинаются с индекса 0, и заканчиваются (последний элемент в массиве) индексом N-1, где N - размер массива. С матрицами - то же самое. |
| Автор: Mr_Nuke 29.3.2011, 22:23 |
| Ну с нуля массивы и в дельфи начинаются, только это не объясняет того, почему в watch не выводится значение в ячейке [1][1] |
| Автор: borisbn 29.3.2011, 22:25 |
тем более, если ты не приведёшь код, который (по-твоему) не рааботает. |
| Автор: boostcoder 29.3.2011, 22:32 |
| Mr_Nuke, позвольте поинтересоваться. какой смысл преследуете, юзая столь древний инструмент? |
| Автор: Mr_Nuke 30.3.2011, 16:28 |
| borisbn, пока единственная проблема заключается в том, что при пошаговом выполнении трудно отследить изменение значений матрицы Приходится работать с такой версией, поскольку такая же установлена в универе. Боюсь задать глупый вопрос, но почему IDE 1996-го года если в названии 2005? И какую версию предложите вы? |
| Автор: Mr_Nuke 30.3.2011, 18:48 |
| borisbn, Вот примерно вот так вот. Видно, что программа остановлена на строке cout. Кстати, после ее выполнения, выведется пятерка |
| Автор: volatile 31.3.2011, 00:38 |
| Mr_Nuke, похоже что у вас переменная А есть где-то в другом месте. и watch выводит ту переменную. Попробуйте дать другое имя, если не поможет скиньте сюда весь код, посмотрим. |
| Автор: Mr_Nuke 31.3.2011, 07:35 |
| volatile, пожалуйста |
| Автор: baldina 31.3.2011, 11:24 |
| должно нормально казать (в VS2010 все ок), но поскольку у Вас не чистый С++, а managed (CLR project), х.з. может зависит от версии .NET, версии компилятора... насколько нужен CLR? сделайте нормальный Win32 Console Project и будет Вам счастье |
| Автор: Mr_Nuke 31.3.2011, 19:44 |
| Сделал. Получил много счастья |