122 ROZDZIAŁ 17. WSKAŹNIKI Ostatnią funkcją jest funkcja calloc(). Przyjmuje ona dwa argumenty: liczbę elementów tablicy oraz wielkość pojedynczego elementu. Podstawową różnicą pomiędzy funkcjami mal- loc() i calloc() jest to, że ta druga zeruje wartość przydzielonej pamięci (do wszystkich bajtów wpisuje wartość 0). Tablice wielowymiarowe Rysunek 17.4: tablica dwuwymiarowa — w rzeczywistości tablica ze wskaźnikami do tablic W rozdziale Tablice pokazaliśmy, jak tworzyć tablice wielowymiarowe, gdy ich rozmiar jest znany w czasie kompilacji. Teraz zaprezentujemy, jak to wykonać za pomocą wskaźników i to w sytuacji, gdy rozmiar może się zmieniać. Załóżmy, że chcemy stworzyć tabliczkę mnożenia: int rozmiar; int i; int **tabliczka; printf("Podaj rozmiar tabliczki mnozenia: "); scanf("%i", &rozmiar); /* dla prostoty nie będziemy sprawdzali, czy użytkownik wpisał sensowną wartość */ tabliczka = malloc(rozmiar * sizeof *tabliczka); /* 1 */ for (i = 0; i
... zobacz całą notatkę
Komentarze użytkowników (0)