Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    C++: da file non legge spazi e \n

    Ciao a tutti,
    sono un provetto di C++.
    quando vado a leggere un file e scrivo il contenuto su un'altro file o a video, non riesco a leggere il valore di spazio e ritorno a capo dal file, quindi i dati vengono inpasticciati.
    Come posso fare???
    se scrivo if(variabile_char == ' ') non entra mai nell'if perchè non vede lo spazio, eppure il C lo legge, stesso problema con ritorno a capo \n
    Soluzioni???
    Grazie
    P.S.
    Il C++ ha una funzione come C che legge l'intera riga???
    in C si chiama fgets
    Grazie ancora
    http://www.perungiorno.it

  2. #2
    INPUT:
    cin.getline()
    http://forum.html.it/forum/showthrea...ighlight=cin+c

    OUTPUT:
    fgets()
    .......
    fgets(stringa, dimensione_stringa, puntatore_al_file);
    http://forum.html.it/forum/showthrea...hreadid=378864
    ...Terrible warlords, good warlords, and an english song

  3. #3
    non mi risulta che se scrivi

    char c=' '; //digito spazio tra apici singoli
    if (c==' ')
    printf("CIAO");

    non entri nell'if, le 2 istruzioni precedenti sicuramente scriveranno la parola CIAO, alternativamente puoi usare char(32) al posto di ' '

    Il C++ ha una funzione come C che legge l'intera riga???
    in C si chiama fgets
    in C++ puoi usare tutte le funzioni del C quindi anche fgets, aventualmente se proprio vuoi usare il C++ prova a vederti la classe MFC CFile metodo Read.

    Ciao

  4. #4
    Tokamak .. Come puoi tirare in ballo MFC che tra l`altro non solo non e` portabile ma e` solo per VC++? Non sei a conoscenza dell`esistenza di una libreria standard per il C++?

    Johnny_Depp .. fgets() per l`output non mi risulta eh..

    pax_partout .. per leggere da file crei un oggetto 'ifstream' e lo leggi come quando usi cin, pero` invece di fare il classico >>:

    codice:
    cin >> riga;
    Fai come ha detto Johnny_Depp:

    codice:
    ifstream file( "nomefile" );
    
    file.getline( riga, n_caratteri );
    Oppure se 'riga' e` di tipo 'string':

    codice:
    getline( file, riga );
    Questo finche` getline() non ritorna 0 o e` vero file.eof().

    Le funzioni esistono, sia di per se` che le loro documentazioni.

    U-S-A-T-E-L-E.

    RTFW, STFW.

    www.google.com

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.