Uczenie się strun w C

Uczenie się strun w C
Ciąg jest ważną koncepcją w języku C. Ciąg jest niczym innym jak tablicą zawierającą tylko wartość typu znaków. Możemy więc powiedzieć pośrednio, że ciąg jest tablicą znaków. Sekwencja znaków zakończonych z null postaci.

Kod ASCII o znaku zerowym wynosi 0.

Przykład programowania 1

W tym programowaniu postaramy się dowiedzieć, w jaki sposób ciąg jest deklarowany i inicjowany, a następnie wydrukować wszystkie znaki tego konkretnego ciągu.

#włączać
int main ()

// deklaracja i inicjalizacja ciągu.
char s [10] = 's', „a”, „u”, „r”, „a”, „b”, „h”, '\ 0';
for (inti = 0; i<= 7 ; i++ )

printf („ %c”, s [i]); // Drukowanie łańcucha

printf („\ n”);
powrót 0;

Wyjście

Notatka

Jeśli chcemy zainicjować ciąg, możemy napisać każdą literę słowa z to „i” oddzielnie i zakończyć postacią specjalną „\ 0”.

Wyjaśnienie

Tutaj chcemy wydrukować zerową postać, ale nie możemy wydrukować zerowej postaci, ponieważ nie jest to postać do wydrukowania, ale ma inną użyteczność.

Jeśli chcemy wziąć wartość lub ciąg od użytkownika, nie wiemy, ile razy pętla będzie działać, ale kiedy pętla zobaczy, że nadeszło „\ 0”, zrozumie, że to koniec ciąg.

dla (i = 0; s [i]!= '\ 0'; i ++) // użycie zerowego charakteru
printf („%c”, s [i]);

Jeśli nie chcemy drukować każdego węzła ciągu za pomocą PLOOP i chcemy wydrukować całkowity ciąg, to-

printf („ %s”, s); // zamiast pętli do wydrukowania ciągu

Inną funkcję można użyć do wydrukowania ciągu.

Puts (y); // [nie jest wymagany specyfikator formatu]]
[Puts () funkcja automatyczna Zmień linię]
Puts (& s [0]);

Wyjście

Saurabh

Kolejny format inicjalizacji ciągów

Char S [10] = „Saurabh”

Jeśli nie chcemy zainicjować ciągu w momencie deklaracji, chcemy wziąć ciąg od użytkownika, to -

printf („Wprowadź nazwę”);

1. Scanf („ %s”, s); // tutaj nie wymaga używania i podpisywania .

2. Scanf („ %s”, %s [0]); // Znaczenie dwóch linii jest takie samo

Scanf () ma tylko jedną wadę. Jeśli chcemy wydrukować nazwę taką jak Avishek Dutta, to tylko drukuje Avishek. Ponieważ Scanf () jest jak ogranicznik separacji. Jeśli go użyjemy, to rozumie, że informacje lub ciąg jest zakończony. Ma inną formę -

dostaje (s); - bierze ciąg od użytkownika, tak jak Scanf ().

Ale drukuje całkowitą sznur - Avishek Dutta.

Przykład programowania 2

Ten przykład programowania nauczy, w jaki sposób deklarujemy i zainicjujemy ciąg za pomocą funkcji Malloc ().

#włączać
#włączać
#włączać
int main ()

char *a;
int b;
printf („Ile znaków w ciągu ? ");
Scanf („%D”, & B);
a = (char *) malloc (b * sizeof (char)); // Tworzenie bloku ciągu
printf („Włóż ciąg:”);
Scanf („%s”, a);
printf („Wpisany ciąg: %s \ n”, a);
darmowe (a);
powrót 0;

Wyjście

Wyjaśnienie

Tutaj chcemy wprowadzić ciąg od użytkownika. Ciąg jest tworzony za pomocą dynamicznej alokacji pamięci. Malloc () Utwórz ciąg i zwraca adres ciągu do zmiennej a. Teraz po prostu drukujemy ciąg.

Funkcja związana z ciągiem

strlen ()

Przekazywanie adresu ciągu i zwraca długość ciągu. Przekazywanie tylko jednego argumentu.

strrev ()

Odwróć ciąg. Wystarczy tylko jeden argument, który jest adresem ciągu i zwraca ciągła ciąg.

strlwr ()

Zmienia literę górnej skrzynki na literę dolnej sprawy.

strupp ()

Zmienia literę dolnej skrzynki na literę górną sprawę.

strcpy ()

Aby skopiować ciąg

Strcpy (S „Habibpur”)

strcmp ()

Możemy zrobić poniżej, aby porównać ciąg.

strcmp („Amar”, „Amit”)

Zwraca jedną wartość liczbową, która jest odpowiednim niedopasowaniem charakteru ASCII.

strcat ()

Aby dołączyć dwa ciągi,

strcat (s, „uczeń”); s [] = „Hello”

Tak więc jest połączony jako „Witaj student”.

Obsługa wielu sznurków:

Char S [3] [10] = „Bhopal”, „Delhi”, „Kanpur”;

[3] oznacza, ile łańcuchów możemy umieścić w tych ciągach 2D.

Przykład programowania 3

W tym programowaniu uczymy się, w jaki sposób dwuwymiarowy ciąg jest deklarowany i inicjowany, a jego aplikacja.

#włączać
int main ()

Char S [3] [10];
printf („Wprowadź trzy struny”);
for (inti = 0; i<= 2 ; i++ )

gets (& s [i] [0]);

for (inti = 0; i<= 2 ; i++ )

printf („ %s \ n”, s [i]);

powrót 0;

Wyjście

Wyjaśnienie

Podobnie jak tablica, możemy zadeklarować i zainicjować dwuwymiarowy ciąg w języku C. Tutaj deklarujemy ciąg 2D o nazwie S [3] [10]. W nawiasach 3 i 10 oznacza, że ​​zakładamy, że ten konkretny ciąg ma trzy wiersze, a każdy wiersz ma dziesięć kolumn. W łańcuchu przypisujemy nazwy trzech miast. Są Bhopal, Delhi i Kanpur. Wartości te są pobierane od użytkownika za pomocą funkcji gets () przez pętlę. Teraz po prostu drukujemy nazwę miast.

Wniosek

Z powyższej dyskusji na temat ciągu podjęliśmy decyzję, że ciąg jest potężną koncepcją w języku C. String daje nam nowy wymiar do przechowywania wartości typu znaków. Dzięki różnym funkcjom w ciągu możemy obsługiwać różne typy wartości znaków w celu połączenia, niższego do kapitału, kapitału do obniżenia, odwrotności itp.