Stringhe (Esempio 1)

Concetti:
Stringhe e funzioni per la loro manipolazione (libreria string.h)

Testo:
Si realizzi una programma che:

Soluzione:

stringhe_1.c
/*
  Esempio di utilizzo delle stringhe
*/
 
#include <stdio.h>
#include <string.h>
 
#define N 20
 
int main(){
  char str1[N], str2[N], str3[]="abc";
 
  printf("STR3 : %s\n", str3);
 
  /*scanf("%s", str1);*/ /* Legge una parola per volta */
  gets(str1); /* Legge l'intera riga */
  printf("STR1 : %s\n", str1);
 
  strcpy(str2, str1); /* Copia il contenuto di str1 in str2 */
  printf("STR2 : %s\n", str2);
  printf("LEN  : %d\n", (int)strlen(str2)); /* strlen restituisce la lunghezza di una stringa */
 
  str2[3] = '\0'; /* Mettendo il carattere di fine stringa '\0' nella posione 3 del vettore di caratteri dove è memorizzata la stringa si tronca la stringa alla posizione 2 (la stringa risultante sarà perciò formata da 3 caratteri) */
  printf("STR2b: %s\n", str2 );
 
  if (strcmp(str1, str2)==0){ /* La funzione strcmp restituisce 0 se le stringe sono uguali, un valore diverso da 0 se sono diverse (<0 se str1 è minore di str2, >0 se str1 è maggiore di str2 */ 
    printf("str1 uguale a str2\n");
  }else{
    printf("str1 diversa da str2\n");
  }
 
  return 0;
}