• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Referencje a wskaźniki

VPS Starter Arubacloud
0 głosów
279 wizyt
pytanie zadane 16 lutego 2016 w C i C++ przez Exus Początkujący (420 p.)
Witam.

Zagłębiając się w naukę o "mutexach" i wielowątkowości napotkałem się na przypisywanie zmiennej za pomocą operatora "&" czyli referencję. Czytając o tym na wikibooks dowiedziałem się że referencje są dopiero w C++ a w C ich nie było. Wskaźniki zmniejszają czas dostępu do wartości np. zmiennej i mają tą przewagę że można zmieniać ich adres i tu nasuwa się moje pytanie. Jak to jest z referencjami? One też zmniejszają czas dostępu do zmiennej czy są tylko "kopiami" innych zmiennych?

2 odpowiedzi

+1 głos
odpowiedź 16 lutego 2016 przez Patrycjerz Mędrzec (192,320 p.)
Referencje to stałe wskaźniki (czyli o stałym adresie), które mają ukrytą dereferencję, to znaczy, że można z nich korzystać tak samo, jak z normalnych zmiennych, bez używania różnorakich operatorów.
komentarz 16 lutego 2016 przez Exus Początkujący (420 p.)
To wiem. Ale jest jakaś różnica w używaniu wskaźników a referencji? Ma to jakikolwiek wpływ na wydajność?
komentarz 16 lutego 2016 przez Patrycjerz Mędrzec (192,320 p.)
Najprawdopodobniej nie - z tego, co mi wiadomo, referencję są skonstruowane na bazie wskaźników, więc wydajność powinna być ta sama.
komentarz 17 lutego 2016 przez draghan VIP (106,230 p.)
No i masz rację, Patrycjerz.

A co do tego, że referencji nie było w C, to już jpacanowski podał poprawną odpowiedź.
0 głosów
odpowiedź 16 lutego 2016 przez jpacanowski VIP (101,940 p.)

W języku C, jest to operator wyłuskiwania adresu zmiennej.

#include <stdio.h>
#include <stdlib.h>

int main()
{
     int x = 35;

     printf("Wartosc zmiennej x: %d\n", x);
     printf("Adres zmiennej x: %d\n", &x);

     return 0;
}

Podobne pytania

0 głosów
3 odpowiedzi 706 wizyt
pytanie zadane 6 listopada 2015 w C i C++ przez Rivi Początkujący (320 p.)
0 głosów
0 odpowiedzi 168 wizyt
pytanie zadane 15 marca 2016 w C i C++ przez falauthy Stary wyjadacz (11,550 p.)
0 głosów
0 odpowiedzi 806 wizyt

92,782 zapytań

141,712 odpowiedzi

320,601 komentarzy

62,114 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...