Tablica znaków char, wykorzystanie pamięci
Ostatnio zmodyfikowano 2014-05-07 14:02
MTPR Temat założony przez niniejszego użytkownika |
Tablica znaków char, wykorzystanie pamięci » 2014-05-07 13:46:02 Witam, czy kod char tab[ 10 ] = "lancuch"; a) Powoduje najpierw zapisanie literału "lancuch" w pamięci a następnie skopiowanie go do tablicy znakowej ? Jeżeli tak, to jak wygląda to przypisanie ? Kopiowany jest kolejno znak po znaku spod adresu tego literału czy jak ? Jeżeli a) to pamięć marnowana byłaby tu zarówno na ten literał jak i na tablice. b) Czy może tablica tab inicjalizowana jest podczas kompilacji po prostu 7 znakami i na koniec znakiem NUL, a pamięć marnuje się tylko na tą tablicę. Analogiczne pytanie do kodu int liczba = 100; |
|
1aam2am1 |
odpowiedz » 2014-05-07 14:02:04 Najpierw zostanie utworzona tablica 10 elementowa (po kolieji w pamięci) typu char, a później zostaną przypisane do każdego wartości: tab[0] otrzyma wartość 'l' ('' oznacza zamienienie znaku na formę liczbową) i tak dalej.
b) char tab[] = "jakiś tam tekst"; |
|
« 1 » |