logo

Функције Ц гетс() и путс().

Гетс() и путс() су декларисани у датотеци заглавља стдио.х. Обе функције су укључене у улазно/излазне операције стрингова.

Ц гетс() функција

Функција гетс() омогућава кориснику да унесе неке карактере након којих следи тастер ентер. Сви знакови које унесе корисник се чувају у низу знакова. Нул карактер се додаје у низ да би постао стринг. Гетс() омогућава кориснику да унесе стрингове раздвојене размаком. Враћа стринг који је унео корисник.

Декларација

 char[] gets(char[]); 

Читање стринга помоћу гетс()

 #include void main () { char s[30]; printf('Enter the string? '); gets(s); printf('You entered %s',s); } 

Излаз

 Enter the string? javatpoint is the best You entered javatpoint is the best 

Функција гетс() је ризична за коришћење јер не врши проверу везаности низа и наставља да чита знакове док се не наиђе на нови ред (ентер). Пати од прекорачења бафера, што се може избећи коришћењем фгетс(). Функција фгетс() осигурава да се не чита више од максималног ограничења знакова. Размотрите следећи пример.

 #include void main() { char str[20]; printf('Enter the string? '); fgets(str, 20, stdin); printf('%s', str); } 

Излаз

 Enter the string? javatpoint is the best website javatpoint is the b 

Ц путс() функција

Функција путс() је веома слична функцији принтф(). Функција путс() се користи за штампање стринга на конзоли који је претходно прочитан коришћењем функције гетс() или сцанф(). Функција путс() враћа целобројну вредност која представља број знакова који се штампају на конзоли. Пошто штампа додатни знак новог реда са стрингом, који помера курсор на нову линију на конзоли, целобројна вредност коју враћа путс() ће увек бити једнака броју знакова присутних у стрингу плус 1.

Декларација

 int puts(char[]) 

Хајде да видимо пример за читање стринга помоћу гетс() и штампање на конзоли помоћу путс().

 #include #include int main(){ char name[50]; printf('Enter your name: '); gets(name); //reads string from user printf('Your name is: '); puts(name); //displays string return 0; } 

Излаз:

 Enter your name: Sonoo Jaiswal Your name is: Sonoo Jaiswal