Lektionsindhold -- Tastaturgenvej: 'u'  Forrige side: Tekststrenge og pointere -- Tastaturgenvej: 'p'  Næste side: Tekststrenge i forhold til tegn -- Tastaturgenvej: 'n'  Forelæsningsnoter - alle slides sammen  Lærebog -- Tastaturgenvej: 'v'  Alfabetisk indeks  Hjælp om disse noter  Kursets hjemmeside    Tekststrenge - slide 7 : 26

Ændringer af tekststrenge

Tekststrenge, til hvilke der er allokeret plads i et array, kan ændres (muteres)

Tekststrenge, der er angivet som en strengkonstant refereret af en pointer, kan ikke ændres

  char str_1[] = {'A', 'a', 'l', 'b', 'o', 'r', 'g', '\0'};
  *(str_1 + 1) = 'A';

  char str_2[8] = "Aalborg";
  *(str_2 + 1) = 'A';

  char *str_3 = "Aalborg";
  *(str_3 + 1) = 'A';  /* Fejl. Segmentation fault under kørsel */

  char str_4[8];
  str_4[0] = 'A';  str_4[1] = 'a';  str_4[2] = 'l';  
  str_4[3] = 'b';  str_4[4] = 'o';  str_4[5] = 'r';  
  str_4[6] = 'g';  str_4[7] = '\0';     
  *(str_4 + 1) = 'A';
string-mutation.c
Hele programmet der ændrer det andet tegn i Aalborg fra 'a' til 'A'.