Funkcje łańcuchowe w C

Opublikowany: 2022-11-14

Programowanie w C wykorzystuje zbiór znaków i różne obecne funkcje, aby uprościć długie procesy kodowania w krótkie i precyzyjne funkcje ułatwiające implementację. Te funkcje ułatwiają programistom obsługę wielu operacji w ramach ograniczonej liczby znaków i manipulowanie ciągami znaków. Różnorodne języki programowania zawierają wbudowane funkcje, gotowe do użycia w przypadku chęci uzyskania precyzji.

Dzisiaj omówimy łańcuch języka programowania C i jego funkcje, aby uzyskać dogłębny wgląd w różne funkcje łańcuchów, ich zastosowania, zalety i inne funkcje, które sprawiają, że praca programistów jest dynamiczna.

Spis treści

Co to jest ciąg

Ciąg jest obecny w różnych językach programowania, chociaż c przetwarza łańcuch inaczej niż zwykłe języki programowania. W języku C ciąg jest jednowymiarową tablicą znaków, w której każdy znak ciągu zajmuje jedno miejsce w tablicy. Łańcuch kończy się znakiem null zdefiniowanym przez „\0”, który odnosi się do końca dowolnego ciągu.

Rzućmy okiem na reprezentację znakową i łańcuchową:

ciąg znaków[10] = {'w','e','l','c','o','m','e','\0'};

ciąg znaków[10] = „witaj”;

ciąg znaków [] = „witaj”;

Zakończenie łańcucha znakiem null jest ważne, aby sekwencja znaków była rozpoznawana jako ciąg. W przeciwnym razie jest to po prostu ciąg znaków bez terminatora zerowego. Należy zauważyć, że ciągi są ujęte w podwójne cudzysłowy, podczas gdy pojedyncze cudzysłowy obejmują znaki w sekwencji. Zadeklarowanie łańcucha jako string[10] przydziela 10 bajtów łańcucha, podczas gdy string[] przydziela pamięć podczas wykonywania programu.

Ucz się kursów programistycznych online z najlepszych światowych uniwersytetów. Zdobądź programy Executive PG, Advanced Certificate Programs lub Masters Programs, aby przyspieszyć swoją karierę.

Deklaracja ciągu

Jak wspomniano powyżej, łańcuchy są deklarowane przy użyciu dwóch różnych metod. C jest językiem statystycznym, który jest jednowymiarowy. Dlatego zmienne łańcuchowe wymagają deklaracji, aby nadać określone znaczenie dowolnemu łańcuchowi.

Na przykład char temp[]=”temp string”;

t mi m p s t r i n g \0

Łańcuchy typu char, jeśli są zadeklarowane w podwójnych cudzysłowach, to „\0” jest bezpośrednio stosowane na końcu łańcucha, aby go zakończyć. Można to również wyrazić jako char temp[]=”temp string”;

  • Znak zadeklarowany jako 'string[6]' będzie zawierał 6 bajtów pamięci do przydzielenia wartości łańcuchowych. Z drugiej strony deklaracja jako „ string[] ” przydzieli miejsce zgodnie z wymaganiami poprzez wykonanie programu.

Inicjalizacja ciągu

Proces deklaracji i inicjalizacji idą w parze, gdzie deklaracja deklaruje istnienie zmiennej, a inicjalizacja przypisuje jej wartość. Inicjalizacja ciągów znaków w c ma wiele sposobów implementacji. Oto kilka z nich:

  • char t[]=”łańcuch tymczasowy”;
  • char t[10]=”łańcuch tymczasowy”;
  • char t[]={'t','e','m', 'd','\0'};
  • char t[5]={'t','e','m', 'd','\0'};

Funkcje łańcuchowe w C

funkcje łańcuchowe w języku programowania C są dołączone, aby uprościć obsługę łańcuchów. Funkcje łańcuchowe odnoszą się do sekwencji zdań, które wykonują określone zadania. Funkcje te można ponownie wykorzystać w różnych ciągach znaków, aby uprościć obsługę ciągów znaków, umożliwiając użycie tego samego zestawu instrukcji w różnych wzorcach kodowania. Wielu programistów czerpie korzyści z funkcji łańcuchowych, aby zaoszczędzić czas na kilkukrotnym przepisywaniu kodu. Oto zalety korzystania z funkcji łańcuchowych:

  • Zmniejszony rozmiar kodu
  • Zwiększona czytelność
  • Łatwiejszy proces debugowania
  • Ulepszona możliwość ponownego użycia kodu, umożliwiająca programistom korzystanie z podobnych funkcji bez konieczności pisania kodu od zera.

Typy funkcji łańcuchowych

Zamiast używać złożonych sekwencji kodu do manipulowania kodami, można użyć różnych wbudowanych funkcji ciągów znaków do obsługi ciągów przechowywanych w standardowej bibliotece funkcji obsługi ciągów języka C, zwanej „string.h”.

Oto kilka typowych funkcji obsługi ciągów znaków:

1. Funkcja printf() i scanf()

funkcja scanf() służy do pobierania danych od użytkowników, dopóki nie napotka białych znaków lub końca.

Na przykład:

#include <stdio.h>

int main()

{

int test liczba całkowita;

printf("Podaj liczbę całkowitą: ");

scanf("%d", &testInteger);

printf("Liczba = %d", testInteger);

zwróć 0;

}

Wyjście:

Wpisz liczbę całkowitą: 4

Liczba = 4

Funkcja printf() kieruje sformatowane dane wyjściowe na ekran, wyświetlając zarówno łańcuch, jak i zmienne.

Na przykład:

#include <stdio.h>

int main()

{

// Wyświetla łańcuch w cudzysłowach

printf("Programowanie w C");

zwróć 0;

}

Wyjście:

Programowanie C

Popularne kursy i artykuły na temat inżynierii oprogramowania

Popularne programy
Program wykonawczy PG w rozwoju oprogramowania - IIIT B Program certyfikatów Blockchain - PURDUE Program Certyfikatów Cyberbezpieczeństwa - PURDUE Magister informatyki - IIIT B
Inne popularne artykuły
Wynagrodzenie inżyniera chmury w USA 2021-22 Wynagrodzenie architekta rozwiązań AWS w USA Wynagrodzenie programisty backendu w USA Wynagrodzenie programisty front-end w USA
Wynagrodzenie programisty internetowego w USA Pytania do wywiadu ze Scrum Masterem w 2022 roku Jak rozpocząć karierę w cyberbezpieczeństwie w 2022 roku? Opcje kariery w USA dla studentów inżynierii

2. Funkcja stawia() i pobiera()

gets() pobiera dane wejściowe użytkownika podczas czytania białych znaków jako ciągu znaków. Z drugiej strony funkcja puts() pozwala na wyświetlenie ciągu znaków na ekranie użytkownika.

Na przykład:

#include main()

Int main()

{

temperatura zwęglenia [20];

printf("Podaj swoje Imię");

dostaje(temp);

printf("Nazywam się: ");

wstawia (temp);

zwróć 0;

}

3. Funkcja strcpy()

Funkcja strcpy() kopiuje zawartość jednego łańcucha do drugiego.

Na przykład:

#include <stdio.h>

#include <łańcuch.h>

int main()

{

znak s1[30] = „łańcuch 1”;

char s2[30] = „string 2 : Skopiuję do s1”;

/* ta funkcja skopiowała s2 do s1*/

strcpy(s1,s2);

printf("Ciąg znaków s1 to: %s", s1);

zwróć 0;

}

Wyjście:

Ciąg s1 to: ciąg 2: Zamierzam skopiować do s1

4. Funkcja strlen()

Zamiast pisać program ręczny, aby uzyskać długość dowolnego łańcucha, użyj funkcji strlen() , aby znaleźć długość dowolnego łańcucha.

Na przykład:

#include <stdio.h>

#include <łańcuch.h>

int main()

{

char str1[20] = „Książka dla początkujących”;

printf("Długość łańcucha str1 gdy maxlen wynosi 30: %d", strnlen(str1, 30));

printf("Długość łańcucha str1, gdy maxlen wynosi 10: %d", strnlen(str1, 10));

zwróć 0;

}

Wyjście:

Długość łańcucha str1, gdy maxlen wynosi 30: 13

Długość łańcucha str1, gdy maxlen wynosi 10:10

5. Funkcja strw()

Funkcja strrev() może być użyta do odwrócenia zawartości dowolnego łańcucha.

Na przykład:

#include<stdio.h>

#include<string.h>

int main()

{

char temp[20]=”Odwróć”;

printf("Ciąg przed odwróceniem to: %s\n", temp);

printf("Ciąg po strrev() :%s", strrev(temp));

zwróć 0;

}

6. Funkcja strcmp()

Funkcja strcmp() służy do porównywania dwóch łańcuchów. Funkcja strcmp w C porównuje wzajemne cechy między dwoma łańcuchami, aby dostarczyć wynik. Jeśli łańcuchy są podobne, strcmp w C przechwytuje je.

Na przykład:

#include <stdio.h>

#include <łańcuch.h>

int main()

{

char s1[20] = „Książka dla początkujących”;

char s2[20] = „Książka dla początkujących.COM”;

jeśli (strcmp(s1, s2) ==0)

{

printf("łańcuch 1 i ciąg 2 są równe");

}w przeciwnym razie

{

printf("łańcuch 1 i 2 są różne");

}

zwróć 0;

}

Wyjście:

łańcuch 1 i 2 są różne

7. Funkcja strcat()

Funkcja strcat() służy do dołączania ciągu źródłowego na końcu ciągu docelowego. (Kot odnosi się do konkatenacji)

Na przykład:

#include <stdio.h>

#include <łańcuch.h>

int main()

{

znak s1[10] = „Cześć”;

znak s2[10] = „Świat”;

strcat(s1,s2);

printf("Ciąg wyjściowy po konkatenacji: %s", s1);

zwróć 0;

}

Wyjście:

Ciąg wyjściowy po konkatenacji: HelloWorld

8. Funkcja strlwr()/strupr()

Funkcje strlwr() i strupr() pomagają konwertować litery z małych na wielkie i odwrotnie.

Na przykład:

#include<stdio.h>

#include<string.h>

int main()

{

char str[]=”ZMIEŃ mnie na małe litery”;

printf("%s\n", strlwr(str));

zwróć 0;

}

Wyjście:

zamień mnie na małą literę

Podobnie wynikowe dane wyjściowe zostaną zamienione na wielkie litery, jeśli użyjemy funkcji strupr() zamiast strlwr() .

Zwiększ możliwości kariery jako programista

Gruntowna znajomość języka C lub dowolnego innego języka programowania może zapewnić Ci świetny start w udanej karierze w branży IT; wszystko, czego potrzebujesz, to profesjonalna certyfikacja i dedykowana przestrzeń umysłu, aby poprawić swoje umiejętności. Program wykonawczy upGrad w zakresie rozwoju oprogramowania. , rozszerzony przez Purdue University, może być Twoją szansą na rozpoczęcie kariery Full Stack.

Program kursu jest przygotowany zgodnie z najnowszymi umiejętnościami, w tym MERN, programowaniem, podstawami programowania, API, programowaniem Front-end i Back-end, DevOps i nie tylko. Co zaskakujące, uczniowie nie muszą mieć wcześniejszego języka kodowania, dzięki czemu program jest otwarty dla wszystkich aspirantów technicznych!

Wraz z doświadczonymi członkami wydziału, dynamiczna platforma edukacyjna upGrad umożliwia studentom naukę w kwitnącym środowisku przez liderów branży, którzy szkolą ich w zakresie dogłębnych koncepcji odpowiednich dla obecnego rynku technologicznego.

Odwiedź upGrad , aby dowiedzieć się więcej!

Wniosek

Te wbudowane funkcje są niezwykle niezawodne w użyciu dla programistów dzięki złożonym sekwencjom kodowania, aby zaoszczędzić czas i wysiłek związany z tworzeniem funkcji dla określonych operacji. Oprócz tych wyjaśnionych funkcji, plik nagłówka łańcucha zawiera różne inne operacje powiązane z funkcjami, aby uprościć programowanie.

Ćwicz dalej, aby poznać je wszystkie!

Co to są łańcuchy i ich rodzaje?

Łańcuch jest zbiorem znaków zakończonym znakiem null, szeroko stosowanym w programowaniu obliczeniowym. Ma różnorodne funkcje upraszczające złożone sekwencje kodowania i ma kilka typów danych w różnych językach programowania, chociaż w języku C łańcuchy obsługują tylko typy danych znakowych.

Co to jest znak null w C?

Znak null w C odnosi się do dowolnego znaku, który nie ma wartości. Znak zerowy ma zero jako wartość liczbową i jest również nazywany terminatorem zerowym. Chociaż są uważane za znak o wartości zerowej, znaki zerowe są znaczące w kilku językach programowania ze względu na ich implementację jako znaki kontrolne do wypełniania pustych miejsc i wypełniania.

Czym są funkcje w C?

Funkcje w języku C to ciąg kodów zawierających określoną funkcję. Wiadomo, że po zaimplementowaniu w składni funkcje uruchamiają określone operacje i mogą być ponownie użyte do wykonywania podobnych funkcji w innej składni. Funkcje mogą być wbudowane lub muszą być zdefiniowane w celu wykonania określonych zadań.