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

Зачем здесь нужны указатели - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ подскажите нормальный сайт на русском чтобы откампилировать программы с++ http://www.cyberforum.ru/cpp-beginners/thread451005.html
очень надо
C++ Не пойму в чем ошибка #include "stdafx.h" #include <iostream> using namespace std; int main() { int *pVar = new int; *pVar = 5; http://www.cyberforum.ru/cpp-beginners/thread451001.html
Рекурсия C++
Помогите написать рекурсию. Задание прилагаю
компиляторы C++
Подскажите какие компиляторы для C++ используют компьютерные компании? Такие как Adobe, Electronic Games, Skype, Rockstar Games, Microsoft? Добавлено через 5 минут Я допустим знаю что: Panasonic, Philips, Samsung, Siemens, Volvo и Walt Disney Animation Studios используют Qt
C++ Rs232 Помогите с отправкой символов. http://www.cyberforum.ru/cpp-beginners/thread450926.html
Имеется микроконтроллер AVR, на который необходимо подавать набор определенных символов, к примеру $. Нужно на C++ написать программу передачи этих символов. Я совсем новичек в программировании, может кто нибудь дословно может подсказать ка кэто сделать?
C++ Вывод вопросительного предложения Всем привет, задание звучит так: Реализовать программу выбор из текста вопросительных предложений. Вроде написал все не плохо..) на первый взгляд) #include <iostream> #include <stdio.h> #include <string.h> подробнее

Показать сообщение отдельно
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
24.06.2012, 03:39     Зачем здесь нужны указатели
Цитата Сообщение от Devochka Посмотреть сообщение
я саму тему не понимаю про указатели.
Указатели часто нужны при работе с массивами и структурами. Раз уж разобрались с функциями, наверняка представляете, что указатель - практически единственный способ передать массив на обработку в функцию. Структуру, конечно, можно было бы передавать и по значению, но это в большинстве случаев очень неэффективно, а то и просто неприемлимо. К примеру
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#define STR_LEN 256
typedef struct PERSON {
    char first_name[STR_LEN];
    char second_name[STR_LEN];
} person_t;
 
/* В функцию передаётся 4(8) байтовый указатель на 32(64) битной системе. */
void good_dump(const person_t * person) {
    printf("%s %s\n", person->first_name, person->second_name);
}
 
 
/* Так тоже можно, но в функцию будут отправлены все аж 512 байт, что точно не ускорит работу */
void bad_dump(person_t person) {
    printf("%s %s\n", person.first_name, person.second_name);
}
Пример, конечно, утрированный, но думаю, суть отражает.


Цитата Сообщение от Devochka Посмотреть сообщение
Но здесь не пойму причину применения.
А вот это, честно говоря, и для меня загадка. Какой профит можно получить при сложении двух чисел, используя указатели на указатели на переменные с этими числами? Может я чего-то не понимаю, но для обучения работе с указателями можно было гораздо более наглядные и жизненные примеры придумать...
 
Текущее время: 00:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru