String funksiyalari
String funksiyalari
C tilida stringlar ustida muayyan amallarni bajarish uchun ishlatiladigan ko‘plab foydali string funksiyalari ham mavjud.
Ulardan foydalanish uchun dasturingizga <string.h> sarlavha faylini qo‘shishingiz kerak:
#include <string.h>
String uzunligi
Masalan, string uzunligini aniqlash uchun strlen() funksiyasidan foydalanishingiz mumkin:
Misol
char alphabet[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
printf("%zu", strlen(alphabet));
O‘zingiz sinab ko‘ring »
Stringlar bobida string/massiv o‘lchamini aniqlash uchun sizeof operatoridan foydalangan edik. E’tibor bering, sizeof va strlen turlicha ishlaydi, chunki sizeof sanashda \0 belgisini ham hisobga oladi:
Misol
char alphabet[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
printf("%zu\n", strlen(alphabet)); // 26
printf("%zu\n", sizeof(alphabet)); // 27
O‘zingiz sinab ko‘ring »
Shuni ham bilish muhimki, sizeof har doim stringning haqiqiy uzunligini emas, balki xotira hajmini (baytlarda) qaytaradi:
Misol
char alphabet[50] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
printf("%zu\n", strlen(alphabet)); // 26
printf("%zu\n", sizeof(alphabet)); // 50
O‘zingiz sinab ko‘ring »
Stringlarni birlashtirish
Ikki stringni konkatenatsiya qilish (birlashtirish) uchun strcat() funksiyasidan foydalanishingiz mumkin:
Misol
char str1[20] = "Hello ";
char str2[] = "World!";
// Concatenate str2 to str1 (result is stored in str1)
strcat(str1, str2);
// Print str1
printf("%s", str1);
O‘zingiz sinab ko‘ring »
E’tibor bering, str1 ning o‘lchami ikki string birlashtirilgan natijani saqlash uchun yetarlicha katta bo‘lishi kerak (bizning misolimizda 20).
Stringlarni nusxalash
Bir stringning qiymatini boshqasiga nusxalash uchun strcpy() funksiyasidan foydalanishingiz mumkin:
Misol
char str1[20] = "Hello World!";
char str2[20];
// Copy str1 to str2
strcpy(str2, str1);
// Print str2
printf("%s", str2);
O‘zingiz sinab ko‘ring »
E’tibor bering, str2 ning o‘lchami nusxalangan stringni saqlash uchun yetarlicha katta bo‘lishi kerak (bizning misolimizda 20).
Stringlarni taqqoslash
Ikki stringni taqqoslash uchun strcmp() funksiyasidan foydalanishingiz mumkin.
Agar ikki string teng bo‘lsa, u 0 qaytaradi, aks holda 0 bo‘lmagan qiymat qaytaradi:
Misol
char str1[] = "Hello";
char str2[] = "Hello";
char str3[] = "Hi";
// Compare str1 and str2, and print the result
printf("%d\n", strcmp(str1, str2)); // Returns 0 (the strings are equal)
// Compare str1 and str3, and print the result
printf("%d\n", strcmp(str1, str3)); // Returns -4 (the strings are not equal)
O‘zingiz sinab ko‘ring »
To‘liq string ma’lumotnomasi
String funksiyalari bo‘yicha to‘liq ma’lumotnoma uchun C <string.h> kutubxonasi ma’lumotnomasiga o‘ting.
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
