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

Указатели и масивы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как восстановить заголовочный файл sal.h? http://www.cyberforum.ru/cpp-beginners/thread769800.html
При компиляции выскакивали ошибки, связанные с sal.h. Я удалила его подчистую, теперь выдаются ошибки в math. h и не компилируется вообще ничего. Перезагрузить Визуал Студио не помогает. Где...
C++ Что такое int* Если с этим int a=3,*p = &a; понятно, то есть переменная "p" содержит адресс переменной "a" и указывает на тип int, то с этим не очень понятно int* f(){int x=2;return &x} Что происходит в случаее с... http://www.cyberforum.ru/cpp-beginners/thread769793.html
C++ Меню в консоли
Меня интересует вот что: зачем в функции int menu(); вот это условие code=getch(); if (code==224) { //------- } ...
C++ Вывести результаты решения СЛАУ в виде таблицы (графические функции)
Ребят помогите пожалуйста, есть полностью рабочий и компилирующийся код для решения слау методом гаусса но решение необходимо представить в виде таблицы помогите пожалуйста! Добавлено через 27...
C++ Как замостить текстурой прямоугольник? http://www.cyberforum.ru/cpp-beginners/thread769750.html
Имеется уже созданная (скорее всего загруженная из файла) текстура на hdc1, она известного размера (xt,yt) Надо ей замостить прямоугольник x1,y1,x2,y2 на hdc2 Правильно - т.е. если целое количество...
C++ Найти ошибку Добрый день. Есть задача с codeforces (условие). Вот моё решение: #include <iostream> #include <vector> using namespace std; int main() { int n, m; cin >> n >> m; подробнее

Показать сообщение отдельно
gray_fox
What a waste!
1521 / 1226 / 70
Регистрация: 21.04.2012
Сообщений: 2,565
Завершенные тесты: 3
27.01.2013, 04:52
fuelcs, возможно в этой теме уже упомянули, но по поводу массивов\указателей в С\С++ есть "забавная" вещь. Имя массива почти во всех случаях неявно преобразуется в указатель на первый элемент. Например такой код:
C++
1
2
3
4
5
6
void f(int * array) { // ... }
 
int main{
   int array[5];
   f(array);
}
правильный. Но это правило не применяется рекурсивно. Т.е. такой код уже не корректен:
C++
1
2
3
4
5
6
void f(int ** array) { // ... }
 
int main{
   int array[5][5];
   f(array);
}
Т.е. имя двумерного массива не может преобразоваться к указателю на указатель на первый элемент. Только к указателю на массив. Т.е. такой такой код корректен:
C++
1
2
3
4
5
6
void f(int (* array)[5]) { // ..}
 
int main{
   int array[5][5];
   f(array);
}

Не по теме:

Вот такие проги.



Добавлено через 7 минут
Цитата Сообщение от gray_fox Посмотреть сообщение
Вот такие проги.

Не по теме:

"Вот такие пироги" ну да)))

1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru