[C++]Nazwa zmiennej ze zmiennej
-
- Piegowaty Guziec
- Posty: 14
- Rejestracja: 25 sie 2010, 19:35
- Płeć: Mężczyzna
- Wersja Ubuntu: 12.04
- Środowisko graficzne: Unity
- Architektura: x86_64
[C++]Nazwa zmiennej ze zmiennej
W jaki sposób ze zmiennej zrobić nazwę innej zmiennej? Tzn. mam zmienną x o wartości a i chcę utworzyć zmienną której nazwą będzie wartość zmiennej x.
Linux #522764
- ethanak
- Wygnańcy
- Posty: 3054
- Rejestracja: 04 gru 2007, 13:19
- Płeć: Mężczyzna
- Wersja Ubuntu: 12.04
- Środowisko graficzne: GNOME
- Architektura: x86
- Lokalizacja: Bielsko-Biała
- Kontakt:
Odp: [C++]Nazwa zmiennej ze zmiennej
A od kiedy C++ pozwala na tworzenie zmiennych runtime?
Кто жопой родился, чижиком не помрёт
-
- Przebojowy Jelonek
- Posty: 1113
- Rejestracja: 04 sty 2008, 20:58
- Płeć: Mężczyzna
- Wersja Ubuntu: inny OS
- Środowisko graficzne: Inne
- Architektura: x86_64
Odp: [C++]Nazwa zmiennej ze zmiennej
A co chcesz przez to osiągnąć? Tzn. co chcesz zrobić?Tzn. mam zmienną x o wartości a i chcę utworzyć zmienną której nazwą będzie wartość zmiennej x.
-
- Piegowaty Guziec
- Posty: 14
- Rejestracja: 25 sie 2010, 19:35
- Płeć: Mężczyzna
- Wersja Ubuntu: 12.04
- Środowisko graficzne: Unity
- Architektura: x86_64
Odp: [C++]Nazwa zmiennej ze zmiennej
W uproszczeniu:
Za chcę wcisnąć wartość tej zmiennej. Chodzi o to by utworzyć n zmiennych z kolejnymi numerkami(aż do n). Być może źle się za to zabieram, dopiero uczę się C++.
Kod: Zaznacz cały
for(int i = 1; i <= n; i++)
{
int osoba_[i] ;
}
Linux #522764
-
- Piegowaty Guziec
- Posty: 8
- Rejestracja: 09 lut 2006, 22:05
- Płeć: Mężczyzna
- Wersja Ubuntu: inny OS
- Środowisko graficzne: GNOME
- Kontakt:
Odp: [C++]Nazwa zmiennej ze zmiennej
Poczytaj o tablicach w C/C++. Jest o tym fajnie wyjaśnione na wikibooks.
tablice deklaruje się o tak:
następnie możemy wprowadzać do tablicy dowolne dane określonego przy deklaracji typu, np:
itd.
Wypisać dane z tablicy również nie jest trudno, przykładowo:
Wypisze zerowy element tablicy, czyli w naszym przypadku 12.
Uwaga! Tablica zadeklarowana w ten sposób:
gdzie n jest dowolną liczbą naturalną, zawiera elementy z przedziału od 0 do n-1. Nie ma elementu n-tego. Przekroczenie zakresu jest błędem więc nie rób tego.
Ponadto pewnie zaraz zgłosi się ktoś kto powie "Ale przecież nie można deklarować tablic od zmiennych!". Jest to jednak tylko połowa prawdy. Język C przed standardem C99 nie zakłada deklarowanie tablic od zmiennych (jest to błąd w tym standardzie). C99 i C++ umożliwia takie deklaracje. Nazywa się to VLA (ang. Variable Length Arrays) i jest to konstrukcja dopuszczalna (choć wciąż w lepszym guście jest alokować pamięć).
tablice deklaruje się o tak:
Kod: Zaznacz cały
int tablica[ilosc_elementow];
Kod: Zaznacz cały
tablica[0]=12;
tablica[1]=13;
Wypisać dane z tablicy również nie jest trudno, przykładowo:
Kod: Zaznacz cały
cout << tablica[0] << endl;
Uwaga! Tablica zadeklarowana w ten sposób:
Kod: Zaznacz cały
int tab[n];
Ponadto pewnie zaraz zgłosi się ktoś kto powie "Ale przecież nie można deklarować tablic od zmiennych!". Jest to jednak tylko połowa prawdy. Język C przed standardem C99 nie zakłada deklarowanie tablic od zmiennych (jest to błąd w tym standardzie). C99 i C++ umożliwia takie deklaracje. Nazywa się to VLA (ang. Variable Length Arrays) i jest to konstrukcja dopuszczalna (choć wciąż w lepszym guście jest alokować pamięć).
- borzole
- Serdeczny Borsuk
- Posty: 127
- Rejestracja: 10 sie 2010, 11:48
- Płeć: Mężczyzna
- Wersja Ubuntu: inny OS
- Środowisko graficzne: GNOME
- Architektura: x86_64
- Kontakt:
Odp: [C++]Nazwa zmiennej ze zmiennej
Tak na wyrost, możesz też użyć tzw. "tablice asocjacyjne" jeśli szukasz rozwiązania o indeksie nie numerycznym.
Pierwszy lepszy link do przykładu: http://www.zedwood.com/article/100/cpp- ... tive-array
Pierwszy lepszy link do przykładu: http://www.zedwood.com/article/100/cpp- ... tive-array
-
- Piegowaty Guziec
- Posty: 14
- Rejestracja: 25 sie 2010, 19:35
- Płeć: Mężczyzna
- Wersja Ubuntu: 12.04
- Środowisko graficzne: Unity
- Architektura: x86_64
Odp: [C++]Nazwa zmiennej ze zmiennej
Wszystko jasne, rozwiązanie banalne. Przepraszam, że zawracałem wam gitarę taką błahostką i dziękuję, że nie odesłaliście mnie do Google. Tak trzymać 

Linux #522764
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 1 gość