Kaip perskaityti eilutę C

Kaip perskaityti eilutę C. C programavimo kalba nepateikia tikrojo eilutės duomenų tipo. C kalboje eilutę emuliuoja simbolių masyvas, kuris baigiasi NULL. Toks masyvas gali būti deklaruojamas statiškai arba kaip rodyklė. Standartas C suteikia daug funkcijų, skirtų valdyti simbolių masyvus arba C eilutes. Šiame straipsnyje daugiausia dėmesio skiriama funkcijoms, kurios nuskaitomos iš įvesties srauto ir failų. Vadovaukitės šiais patarimais, kad išmoktumėte skaityti eilutę C.

1 žingsnis

Suprasti pagrindus. C eilutė yra tipo diagramos masyvas. Kaip ir visų C ​​masyvų atveju, pirmasis elementas indeksuojamas 0, o paskutinis – „eilutės ilgis atėmus 1“. Paprastai kompiliatorius įterpia NULL paskutinėje vietoje, todėl eilutėje gali būti "eilutės ilgis atėmus 1" elementai. Nulis atitinka 0x00 sveikųjų skaičių forma ir \0 simbolių forma. Elementus pasiekia operatorius „[]“. 2 veiksmas iliustruoja šias sąvokas.

Dienos vaizdo įrašas

2 žingsnis

Pridėkite toliau pateiktą „įtraukti direktyvą“ prie bet kurio šaltinio failo prieš naudodami šios mokymo programos funkcijas:

#include < stdio.h >

3 veiksmas

Paskelbkite C eilutę. Žemiau pateiktas kodas rodo deklaraciją naudojant statinį ir rodyklės metodą:

// statinė deklaracija char str[50] = {0}; // sutrumpintas būdas inicijuoti visus elementus į 0 // str[49] yra NULL // str talpa 48 simboliai // deklaravimas rodyklės simboliu pStr = NULL; // nėra atminties paskirstymo pStr = (char)malloc (50); // tai atlieka "malloc()"

4 veiksmas

Nuskaitykite duomenis į C eilutę naudodami "scanf(),", kuri nuskaito eilutes, atskirtas tarpu nuo standarto. įvestis ir įdeda juos į adresus, priklausančius atitinkamiems nuorodos kintamiesiems, pagal „formatą eilutė":

int n; printf("Įveskite savo vardą ir amžių: "); scanf("%s%d", str, &n); // printf("Tavo vardas yra %s ir tau %d metų\n", str, n);

5 veiksmas

Įdėkite duomenis į C eilutę naudodami paprastesnę funkciją „gets()“, kuri nuskaito duomenis iš standartinės įvesties tik į eilutę:

printf("Įveskite savo pavardę: "); gauna (str); printf("Jūsų vardas %s\n", str);

6 veiksmas

Skaityti failo duomenis į C eilutę naudojant "fscanf()"; ši funkcija yra analogiška "scanf()":

FILE* pFile; pFailas = fopen("manoFailas.txt", "r"); // Tarkime, kad failas egzistuoja ir turi duomenis if (NULL != pFile) { fscanf (pFile, "%s", str); printf("Pirmasis žodis faile yra %s\n", str); fclose (pFile); }

7 veiksmas

Pakartokite 5 veiksmą naudodami "fgets(), kuris veikia taip pat kaip "gets()":

FILE* pFile; pFailas = fopen("manoFailas.txt", "r"); if (NULL != pFailas) { fgets (pFile, str); printf("Pirmasis žodis faile yra %s\n", str); fclose (pFile); }

Daiktai, kurių jums prireiks

  • C/C++ IDE arba C kompiliatorius

  • Knyga apie C, pvz., Briano W. „C programavimo kalba“. Kernighanas

Patarimas

Norėdami sužinoti daugiau apie minėtas funkcijas, apsilankykite C Plus Plus svetainėje.

Įspėjimas

Nebandykite kompiliuoti šio kodo. Jis skirtas tik funkcijoms parodyti. Tai nėra nuosekli programa ir kompiliuojant bus pateikta klaidų.