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

Не могу определить причину "магической" операции присвоения - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Создать матрицу по формуле и вывести её на экран http://www.cyberforum.ru/cpp-beginners/thread1701427.html
Народ помогите пожалуйста нужно создать и вывести матрицу по формуле. программа не работает в данном виде компилятор выдает ошибку индекс имеет нецелый тип при изменение i,j на int вообще дико ругается на cos и sqrt. Где ошибки подскажите? #include <iostream> #include <math.h> using namespace std; int main() { setlocale(LC_ALL, "Russian"); const int n=6,m=7;
C++ Поиск по .txt файлу Доброго времени суток . Есть char стока , которая записывается с клавиатуры . После этого нужно сравнить содержимое стоки , с содержимым файла построчно . Если char стока ровняется одной из строк файла , вывести следующую строку файла . Заранее спасибо за ответы . Добавлено через 1 час 9 минут Или , как занести строки файла в массив ? http://www.cyberforum.ru/cpp-beginners/thread1701419.html
C++ Вычислить значения выражения по итерационной формуле
Народ помогите пожалуйста с задачей по С++. Даже не знаю с чего начать. Заранее спасибо По заданному вещественному x вычислить значения x^(1/3) по следующей итерационной формуле : y(i=1)=0.5(y(i)+3x/(2sqr(y(i))+x/y(i)) Начальное приближение : y(0)=x Итерации прекратить при ...
C++ Сделать записи с клавиатуры в файл C++
Задача звучит так: Сделать 3 записи в файл формата .txt(фамилия, имя, возраст). Вводиться записи должны с клавиатуры. Костяк программы выглядит вот так: #include "stdafx.h" #include "stdio.h" #include "conio.h" #include "iostream" #include "stdlib.h"
C++ Определить количество столбцов, упорядоченных по возрастанию http://www.cyberforum.ru/cpp-beginners/thread1701391.html
Задана матрица В(n,m). Определить количество столбцов, упорядоченных по возрастанию. Каждый второй столбец упорядочить по возрастанию и найти, на сколько увеличилось количество таких упорядоченных столбцов. Помогите ,не много изменить код. Как сделать чтобы это не было заданоconst int n=5, m=5;, а пользователь сам вводил n и m. И в самом начале сделать , чтобы программа определяла в первой...
C++ WinAPI Переделать код из юникода в мультибайтовую кодировку Никак не могу переделать код из юникода в мультибайтовую кодировку. DWORD WINAPI downloadThread(LPVOID pParam){ //EndDialog(hDDlg, 0); TCHAR out_files = { 0 }; // 102,4 KB TCHAR out_path = { 0 }; GetDlgItemText(hDDlg, 1008, out_files, 102400); GetDlgItemText(hDDlg, 1009, out_path, 1024); int count = 0; подробнее

Показать сообщение отдельно
yrceus
 Аватар для yrceus
80 / 80 / 54
Регистрация: 25.08.2013
Сообщений: 321
02.04.2016, 18:57     Не могу определить причину "магической" операции присвоения
Потому что с массивами не разобрались Строки, столбцы, его лучше так не представлять. Массив это подряд идущие адреса памяти, каким бы он многомерным не был. То есть если есть двумерный массив, как говорят, из пяти строк и например семи столбцов arr[5][7], то это просто отрезок памяти подряд идущих пяти массивов по семь элементов. [0][1][2][3][4][5][6][0][1][2][3][4][5][6]... и т.д. еще три массива.
И если вы промахнетесь с индексом "в первой строке", например arr[0][9] то попадете на следующую "строку" arr[1][2].
А у вас же совсем интересно, фактический одномерный массив из 50 элементов называется двумерным массивом из 50 "строк" по одному элементу MN1[50][1]
Поэтому MN1[0][1] и MN1[1][0] это один и тот же элемент массива, одна ячейка памяти)))))

Добавлено через 5 минут
вот так выглядит ваш массив MN1[0][1][2][3][4][5][6]...[49]

MN1[1][2] это вот этот элемент MN1[0][1][2][*][4][5][6]...[49] и MN1[2][1] это тоже этот элемент MN1[0][1][2][*][4][5][6]...[49]
 
Текущее время: 17:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru