>> Elettronica Tecnologia >  >> Casa intelligente >> Vita intelligente

Come leggere una stringa in C

Come leggere una stringa in C. Il linguaggio di programmazione C non fornisce un tipo di dati stringa effettivo. In C, una stringa viene emulata da una matrice di caratteri che termina con NULL. Tale array può essere dichiarato staticamente o come puntatore. Il C standard fornisce molte funzioni per manipolare gli array di caratteri o le stringhe C. Questo articolo è incentrato sulle funzioni che leggono dal flusso di input e dai file. Segui questi suggerimenti per imparare a leggere una stringa in C.

Passaggio 1

Comprendi le basi. Una stringa C è una matrice di tipo grafico. Come con tutti gli array C, il primo elemento è indicizzato a 0 e l'ultimo a "lunghezza della stringa meno 1". Di solito, il compilatore inserisce NULL nell'ultima posizione, quindi la stringa può contenere elementi "lunghezza della stringa meno 1". Null equivale a 0x00 in formato intero e '\0' in formato char. Gli elementi sono accessibili tramite l'operatore "[]". Il passaggio 2 illustra questi concetti.

Passaggio 2

Aggiungi la "direttiva include" di seguito a qualsiasi file sorgente prima di utilizzare le funzioni di questo tutorial:

#include

Passaggio 3

Dichiara una stringa C. Il codice seguente mostra una dichiarazione utilizzando il metodo statico e puntatore:

// dichiarazione statica char str[50] ={0}; // modo abbreviato per inizializzare tutti gli elementi a 0 // str[49] è NULL // str ha una capacità di 48 caratteri // dichiarazione tramite puntatore char pStr =NULL; // nessuna allocazione di memoria pStr =(char )malloc(50); // questo viene fatto da "maloc()"

Passaggio 4

Legge i dati in una stringa C utilizzando "scanf()", che legge una serie di stringhe separate da spazio dallo standard input e le inserisce negli indirizzi appartenenti alle opportune variabili di riferimento, secondo una "format string":

int n; printf("Inserisci il tuo nome e l'età:"); scanf("%s%d", str, &n); // printf("Il tuo nome è %s e sei %d vecchio\n", str, n);

Passaggio 5

Inserisci i dati in una stringa C usando la più semplice funzione "gets()", che legge i dati dallo standard input solo in una stringa:

printf("Inserisci il tuo cognome:"); ottiene(str); printf("Il tuo nome è %s\n", str);

Passaggio 6

Leggi i dati del file in una stringa C usando "fscanf()"; questa funzione è analoga a "scanf()":

FILE* pFile; pFile =fopen("myFile.txt", "r"); // presuppone che il file esista e contenga dati if (NULL !=pFile) { fscanf(pFile, "%s", str); printf("La prima parola nel file è %s\n", str); fclose(pFile); }

Passaggio 7

Ripeti il ​​passaggio 5 usando "fgets()", che funziona come "gets()":

FILE* pFile; pFile =fopen("myFile.txt", "r"); if (NULL !=pFile) { fgets(pFile, str); printf("La prima parola nel file è %s\n", str); fclose(pFile); }

Suggerimento

Per saperne di più sulle funzioni menzionate, visitare il sito Web di C Plus Plus.

Avviso

Non provare a compilare questo codice. Ha solo lo scopo di dimostrare le funzioni. Non è un programma coerente e genererà errori durante la compilazione.


  1. Come leggere una dichiarazione di AT & T
  2. Come faccio a leggere una scheda SD Furuno
  3. Come leggere una penna ottica
  4. Come leggere Resistenza su un multimetro
  5. Come String cavo coassiale
  6. Come leggere una scheda XD