sscanf()

C stdio sscanf() funksiyasi

❮ C stdio kutubxonasi


Misol

Stringdan sonni ajratib oling:

char number[] = "24 hours"; int num; sscanf(number, "%d", &num); printf("%d\n", num);

Ta’rif va qo‘llanilishi

sscanf() funksiyasi char massividan ma’lumotlarni o‘qiydi va ularni argumentlar ko‘rsatgan xotira joylariga yozadi.

sscanf() funksiyasi <stdio.h> sarlavha faylida aniqlangan.

format parametri fayldan kutilayotgan ma’lumotlar formatini tavsiflovchi stringdir. Agar massiv tarkibi formatga mos kelmasa, funksiya birinchi nomuvofiqlik yuz bergan joyda o‘qishni to‘xtatadi.

format stringi ma’lumotlarning qaysi qismlari argumentlarga yozilishi kerakligini belgilovchi format spetsifikatorlarini o‘z ichiga olishi mumkin. Har bir format spetsifikatori funksiyaning qo‘shimcha argumentlaridan biriga mos keladi. Format spetsifikatorlari haqida batafsil ma’lumotni scanf() ma’lumotnoma sahifasida topishingiz mumkin.


Sintaksis

sscanf(char * source, const char * format, arg1, arg2...);

Parametr qiymatlari

Parametr Tavsif
source Majburiy. Ma’lumotlar manbai sifatida ishlatiladigan char massivi.
format Majburiy. Massivdan kutilayotgan ma’lumotlar formatini ifodalovchi string.
arg1, arg2... Ixtiyoriy. Qiymatlar yozilishi mumkin bo‘lgan xotiraga ko‘rsatkich bo‘lgan istalgan miqdordagi qo‘shimcha argumentlar.

Texnik tafsilotlar

Qaytaradi: Qiymat yozilgan argumentlar sonini ifodalovchi int qiymat. Xato yuz bergan bo‘lsa, EOF konstantasini qaytaradi.

Ko‘proq misollar

Misol

"1 + 2 = 3" ketma-ketligidan sonlarni ajratib oling:

int a, b, c;
char source[] = "1 + 2 = 3";
sscanf(source, "%i + %i = %i", &a, &b, &c);
printf("a = %d \n", a);
printf("b = %d \n", b);
printf("c = %d \n", c);

Misol

O‘n oltilik sonni o‘qing va uning qiymatini o‘nlik ko‘rinishda chiqaring:

int num;
char hex[] = "FFAD01";
sscanf(hex, "%x", &num);
printf("%d", num);

Misol

Foydalanuvchi kiritgan ma’lumotda "x", "y" yoki "z" belgisini qidiring:

char c;
char source[] = "yes";
int found = sscanf(source, "%[xyz]", &c);
if(found > 0) {
  printf("Found %c", c);
} else {
  printf("Character not found");
}


❮ C stdio kutubxonasi

W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!