
//
// To jest oprzykładowy kod z podrozdziału 27.6.2 „Wejście” książki
// "Programowanie. Teoria i praktyka z wykorzystaniem C++" Bjarne'a Stroustrupa.
//

#include <stdio.h>
#include <iostream>
#include <string>

using namespace std;

//------------------------------------------------------------------------------

void f()
{
    int i;
    char c;
    double d;
    char* s = (char*)malloc(100);
    /* Wczytuje dane do zmiennych przekazywanych jako wskaźniki: */
    scanf("%i %c %lg %s", &i, &c, &d, s);
    /* %s pomija znajdujący się na początku biały znak i kończy się na białym znaku. */
    printf("%i %c %lg %s", i, c, d, s);
}

//------------------------------------------------------------------------------

int main()
{
    f();

    // Najprostszy sposób na wczytanie łańcucha znaków, to użycie funkcji gets(). Na przykład:

    char a[12];
    gets(a);     /* Wczytuje dane do tablicy znaków wskazywanej przez a aż do pojawienia się znaku '\n'. */

    string s;
    cin >> s;    // wczytuje słowo
    getline(cin,s);    // wczytuje wiersz

    char buf[20];
    scanf("%19s",buf);

    int x;
    while((x=getchar())!=EOF) {
        /* ... */ 
    }
}

//------------------------------------------------------------------------------
