Wskaźnik (informatyka): Różnice pomiędzy wersjami
M (Wycofano ostatnie edycje autorstwa 89.234.217.137; przywrócono ostatnią wersję autorstwa ZelDelet.) |
M (Dodaję szablon {{stopka}}) |
||
(Nie pokazano 4 wersji utworzonych przez 3 użytkowników) | |||
Linia 8: | Linia 8: | ||
* Można zawiesić program. |
* Można zawiesić program. |
||
* Można utrudnić sobie życie. |
* Można utrudnić sobie życie. |
||
* Można doprowadzić do wycieku pamięci, a następnie zawiesić program. |
|||
* Można zaszpanować przed znajomymi. |
* Można zaszpanować przed znajomymi. |
||
== Wskaźnik NULL == |
== Wskaźnik NULL == |
||
Wskaźnik NULL to nieprawdopodobnie przydatny ficzer występujący w takich językach programowania jak [[C |
Wskaźnik NULL to nieprawdopodobnie przydatny ficzer występujący w takich językach programowania jak [[C++|ci plas plas]], niestety w [[noob|n00bowksim]] pythonie ich poprostu ni ma. Służy do pokazywania na nic. Szeroko stosowany jako swoisty znak ''dalej nie idziesz debilu''. Zapytasz drogi czytelniku co się kryje pod tym wskaźnikiem? Ciii... Nie tak głośno, obserwują... Pamiętaj. Nigdy nie rób dereferencji na wskaźnik NULL. Nigdy, rozumiesz? |
||
< |
<syntaxhighlight lang="cpp"> |
||
#include <cstdlib> |
#include <cstdlib> |
||
int main() |
int main() |
||
Linia 27: | Linia 28: | ||
} |
} |
||
</syntaxhighlight> |
|||
</source> |
|||
== Przykład zastosowania == |
== Przykład zastosowania == |
||
< |
<syntaxhighlight lang="cpp"> |
||
/*bez wskazników*/ |
/*bez wskazników*/ |
||
int tablica[3][3]={0}; |
int tablica[3][3]={0}; |
||
Linia 53: | Linia 54: | ||
a++; |
a++; |
||
} |
} |
||
</syntaxhighlight> |
|||
</source> |
|||
< |
<syntaxhighlight lang="cpp"> |
||
#include <ctime> |
#include <ctime> |
||
#include <cstdlib> |
#include <cstdlib> |
||
Linia 70: | Linia 71: | ||
} |
} |
||
</syntaxhighlight> |
|||
</source> |
|||
{{stopka}} |
|||
[[Kategoria:Programowanie]] |
[[Kategoria:Programowanie]] |
Aktualna wersja na dzień 01:16, 21 gru 2021
Wskaźnik – ogromnie przydatna rzecz, występująca w niemal każdym języku programowania. Chodzi o to, że wskaźnik jest zmienną przechowującą adres zmiennej w pamięci, która to zmienna może też być wskaźnikiem, no chyba że nie jest wskaźnikiem, to wskaźnik i tak jest zmienną, której adres przechowuje inny wskaźnik. Krótko mówiąc, bardzo prosta i ogromnie przydatna rzecz.
Zastosowanie[edytuj • edytuj kod]
- Można powkiać „programistów” po kierunku technik-informatyk.
- Można odróżnić C od Logo Komeniusz.
- Można zawiesić program.
- Można zawiesić program.
- Można zawiesić program.
- Można utrudnić sobie życie.
- Można doprowadzić do wycieku pamięci, a następnie zawiesić program.
- Można zaszpanować przed znajomymi.
Wskaźnik NULL[edytuj • edytuj kod]
Wskaźnik NULL to nieprawdopodobnie przydatny ficzer występujący w takich językach programowania jak ci plas plas, niestety w n00bowksim pythonie ich poprostu ni ma. Służy do pokazywania na nic. Szeroko stosowany jako swoisty znak dalej nie idziesz debilu. Zapytasz drogi czytelniku co się kryje pod tym wskaźnikiem? Ciii... Nie tak głośno, obserwują... Pamiętaj. Nigdy nie rób dereferencji na wskaźnik NULL. Nigdy, rozumiesz?
#include <cstdlib>
int main()
{
int *stefan = NULL; ///Ej, co ty robisz?
int zdzich; ///Czekaj, ty chyba nie chcesz...
zdzich = *stefan; ///Noooooooooo.....
///Przykro nam ale dalsza częśc kodu objęta jest rządową klauzulą tajności
///CBA BOR CSI NATO H2O
///ILLUMINATI
}
Przykład zastosowania[edytuj • edytuj kod]
/*bez wskazników*/
int tablica[3][3]={0};
/*ze wskaznikami*/
int **tablica=new *int[3];
int a=0;
while(a<3)
{
tablica[a]=new int[3];
a++;
}
a=0;
int b;
while(a<3)
{
b=0;
while(b<3)
{
tablica[a][b]=0;
b++;
}
a++;
}
#include <ctime>
#include <cstdlib>
int main()
{
srand(time(0));
int i;
int* pi; //3.14
while(1){
i = rand();
pi = (int*)i;
delete pi;
}
}