Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 02.05.2009, 00:54   #1
artush1984
Форумчанин
 
Аватар для artush1984
 
Регистрация: 27.04.2009
Сообщений: 184
По умолчанию SSILK I Obyasnite?????

zdrastvuyte!!!! vrode bi ne durak i vrode bi ponimayu vsyo shto napisano v knige(PRATA) no vot shto takoe ssilki ne kak predstavit ne mogu!!!!! ne ponimayu kak oni rabotayut kogda peredayom ix kak argumenti funkcii!! Obyasnite pojalusta bratya starshie(i syostri)!!!!!!!
Hа C я могy пpосто делать ошибки, на C++ я могy их наследовать!
artush1984 вне форума
Старый 02.05.2009, 00:58   #2
Парсифаль
Форумчанин
 
Аватар для Парсифаль
 
Регистрация: 28.04.2009
Сообщений: 186
По умолчанию

Ну по большому счету это заменитель указателей. Выполняет те же самые ф-ции. Но с ними легче работать, потому что не используется это "гребаное" разыменование (*). Ну и также нельзя ссылку переназначить на другой адрес, а также на 0 ссылаться.
Ruft ihm es zu durch alle Land', Der durch dies Wunder Gnade fand!
Hoch uber aller Welt ist Gott, Und Sein Erbarmen ist kein Spott
Парсифаль вне форума
Старый 02.05.2009, 01:02   #3
artush1984
Форумчанин
 
Аватар для artush1984
 
Регистрация: 27.04.2009
Сообщений: 184
По умолчанию

A kak naschyot argumenta funkcii!!!!! eto moyo slaboe mesto!!!!!!

I yesli mojno!!! na primere!!!!!!
Hа C я могy пpосто делать ошибки, на C++ я могy их наследовать!

Последний раз редактировалось MaTBeu; 03.05.2009 в 13:29.
artush1984 вне форума
Старый 02.05.2009, 01:15   #4
Парсифаль
Форумчанин
 
Аватар для Парсифаль
 
Регистрация: 28.04.2009
Сообщений: 186
По умолчанию

Ну классический пример со свопом. Передаем в функwию void две переменные x и y. Хотим чтобы они поменялись значениями. Но если мы используем простые переменные у нас этого не получается.

void swap (int, int)

Код:
int main()
{
  int x = 10, int y = 11;
  swap(x, y);
  cout << x << " " << y << endl;
  return 0;
}

void swap(int x, int y)
{
  int temp;
  temp = x;
  x = y;
  y = temp;
}
Так вот, это не приведет к желаемому результату, потому что внутри ф-ции своп объявились локальные переменные х и у, которые уничтожаться при выходе из ф-ции. Соответственно в мэйне х так и останется 10 а у 11. В следующем посте покажу как решить проблему со ссылками
Ruft ihm es zu durch alle Land', Der durch dies Wunder Gnade fand!
Hoch uber aller Welt ist Gott, Und Sein Erbarmen ist kein Spott
Парсифаль вне форума
Старый 02.05.2009, 01:19   #5
Парсифаль
Форумчанин
 
Аватар для Парсифаль
 
Регистрация: 28.04.2009
Сообщений: 186
По умолчанию

Код:
void swap(int&, int&);

int main()
{
  int x = 10, int y = 11;
  swap(x, y);
  cout << x << " " << y << endl;
  return 0;
}

void swap(int& x, int& y)
{
  int temp;
  temp = x;
  x = y;
  y = temp;
}
На этот раз аргументами ф-ции swap являются ссылки - т.е. псевдонимы настоящих х и у, которые у нас в мэйне сидят. Так вот, в свопе мы уже манипулируем не локальными х и у, а ссылками на настоящие (мэйновские) переменные. Тем самым мы их изменяем. Объяснил?
Ruft ihm es zu durch alle Land', Der durch dies Wunder Gnade fand!
Hoch uber aller Welt ist Gott, Und Sein Erbarmen ist kein Spott
Парсифаль вне форума
Старый 02.05.2009, 01:21   #6
artush1984
Форумчанин
 
Аватар для artush1984
 
Регистрация: 27.04.2009
Сообщений: 184
По умолчанию

Spasibo!!!!!! No Parsifal JAN!!! Ne sochti za xamstvo!!! Yesli mojno pokaji primer so strokami!!!!! U strok kak ya ponyal vsyo ne mnogo po drugomu!!! (char *)!!!!!!
Hа C я могy пpосто делать ошибки, на C++ я могy их наследовать!
artush1984 вне форума
Старый 02.05.2009, 01:25   #7
Парсифаль
Форумчанин
 
Аватар для Парсифаль
 
Регистрация: 28.04.2009
Сообщений: 186
По умолчанию

Inch?
Не понял, можно поконкретнее? char* - это же указатель вроде)
Ruft ihm es zu durch alle Land', Der durch dies Wunder Gnade fand!
Hoch uber aller Welt ist Gott, Und Sein Erbarmen ist kein Spott
Парсифаль вне форума
Старый 02.05.2009, 01:29   #8
artush1984
Форумчанин
 
Аватар для artush1984
 
Регистрация: 27.04.2009
Сообщений: 184
По умолчанию

Armyanin da? Nu yesli po koroche xochyu ponyat kak funkciya swap rabotaet so strokami!!! Yesli armyanin pishi po armyanski!!!!!!
Hа C я могy пpосто делать ошибки, на C++ я могy их наследовать!
artush1984 вне форума
Старый 02.05.2009, 01:32   #9
artush1984
Форумчанин
 
Аватар для artush1984
 
Регистрация: 27.04.2009
Сообщений: 184
По умолчанию

Brat ya tolko tolko nachinayu i poka putayu (&) i (*)
Hа C я могy пpосто делать ошибки, на C++ я могy их наследовать!
artush1984 вне форума
Старый 02.05.2009, 01:35   #10
Парсифаль
Форумчанин
 
Аватар для Парсифаль
 
Регистрация: 28.04.2009
Сообщений: 186
По умолчанию

Нет, нет. Не армянин.
Ну точно так же будет работать. Только:
Код:
char* xLine[80] = "Hello World!";
char* yLine[80] = "Good buy World!";
будет вместо int х, int у;
Ну и аналогично с переменной temp.
Ruft ihm es zu durch alle Land', Der durch dies Wunder Gnade fand!
Hoch uber aller Welt ist Gott, Und Sein Erbarmen ist kein Spott
Парсифаль вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц