C Tutorial/stdio.h/gets

Материал из C\C++ эксперт
Версия от 13:32, 25 мая 2010; Admin (обсуждение | вклад) (1 версия: Импорт контента...)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

gets

Item Value Header file stdio.h Declaration char *gets(char *str); Function reads characters from stdin. The newline character is translated into a null to terminate the string. Return a null pointer on failure.

You cannot limit the number of characters that gets() will read.


<source lang="cpp">#include <stdio.h>

 #include <stdlib.h>
 int main(void)
 {
   char fname[128];
   printf("Enter filename: ");
   gets(fname);
   printf("%s \n", fname);
   return 0;
 }</source>

gets() reads in only text

It reads everything typed at the keyboard until the Enter key is pressed.


<source lang="cpp">#include <stdio.h>

int main(){

   char name[20];

   printf("Name:");
   gets(name);
   printf("%s \n",name);
   return(0);

}</source>

Name:1
      1

gets(var) is the same as scanf("%s",var).

Using gets and putchar

<source lang="cpp">#include <stdio.h> void reverse( const char * const sPtr );

int main() {

  char sentence[ 80 ];
  printf( "Enter a line of text:\n" );
  gets( sentence ); 
  printf( "\nThe line printed backwards is:\n" );
  reverse( sentence );
  return 0; 

} void reverse( const char * const sPtr ) {

  if ( sPtr[ 0 ] == "\0" ) {
     return; 
  }else { 
     reverse( &sPtr[ 1 ] );
     putchar( sPtr[ 0 ] ); 
  }

}</source>

Enter a line of text:
string
The line printed backwards is:
gnirts