قاباقکی پروقرامین ۵-جی سطرینده، کاراکتر دوٚزنی تعیین اولوب. بو دوٚزن اوچون string آدی سئچهرک، نئچه ساییدا کاراکتره شامیل اولماسینین بللی اولمادیغی اوچون، ایکی کروشه آراسی بوش بوراخیلیبدیر.
سونرا ۷-جی سطرده، strlen فانکشنی ایله اوزونلوغو بللی اولوبدور.
آشاغیداکی کودا باخین:
#include <stdio.h>
#include <string.h>
int main()
{
char input[64];
int len;
/* 63 characters plus null */
printf("Instructions: ");
fgets(input,64,stdin);
len = strlen(input);
printf("You typed %d characters of instructions.\n",len);
return(0);
}
strlen دستورالعملیندن اؤتوٚر string.h باشلیق فایلی (header file) چاغیرمالیییق.
سونرا ۵-جی سطرده، input آدی ایله دوٚزن تعریف ائدیلیب و اوزونلوغو ایسه 64 تعیین اولوبدور.
آشاغیدا کامنت اوچون آرتیق معلومات یئر توتوب: 63 کاراکتردن + null کاراکتری.
بو یعنی ایسترینگ اوچون وئریلن میقدار، 63 ساییدا کیبورد'دان کاراکتر آلا بیلر.
البته بو نوکتهیی ده اونوتمایین: strlen فانکشنی، بو نول (Null) کاراکتری سایماز.
سونرا تعیین اولان input ایسترینگ اوچون بیر میقدار آلینیر.
قاباقجا دا دئمیشدیک، بو میقداری fget ایله آلا بیلرسینیز، آنجاق getchar ایله ده اولار و بونو سونرا آچیقلایاجاییق. نیسه، fget فانکشنی بئله یازیلیر:
fgets(variable name,variable length,input type);
پارانتز ایچیندهکی یازیلاردا، ایلک بؤلومده موتغیر آدی وار. یعنی اؤنجه ۵-جی سطرده تعریف ائتدیگیمیز input موتغیری.
سونرا موتغیرین اوزونلوغو و قاباقجا بونو ۶۴ تعیین ائتمیشدیک. البته ۶۴'دن کیچیک عدد ده یازا بیلرسینیز.
پارانتز ایچریسینده سوْن یازی ایسه، نئجه بو میقدارلاری آلماقدیر.
بورادا ایستاندارد آلیش قورغو، یعنی کیبورد تعیین اولوب.
سونرا بونو داها آچیقلایاجاییق و fget ایله فایلدان ایطیلاعات اوخوماغی دا اؤیرتهجهییک.
خروجی ده بئله گؤرونهجک:
Output Terminal
Instructions: I am groot!
You typed 12 characters of instructions.
Process returned 0 (0x0) execution time : 7.444 s
Press ENTER to continue.
putchar ایله بو پروقرامی یاراتماسیندان دئمیشدیک.
آشاغیداکی کودا بیر باخین:
#include <stdio.h>
int main()
{
char input[64];
int len;
printf("Instructions: ");
for (len=0;len<64;len++)
{
input[len] = getchar ();
if (input[len]=='\n')
{
len++;
break;
}
}
printf("You typed %d characters of instructions.\n",len);
return(0);
}
بوراخیش صفحهسی ایسه بئله گؤرونهجکدیر.
Output Terminal
Instructions: I am groot!
You typed 12 characters of instructions.
Process returned 0 (0x0) execution time : 7.444 s
Press ENTER to continue.
یازدیغیمیز I am groot! ایسترینگی، 11 کاراکترجه اوزونلوغو وار، آنجاق نتیجهده 12 یازیب!
عیلت ده بللیدیر، ENTER ده بیر کاراکتر حساب اولونور.