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

    Funzione sostitutiva a gets()

    Fin'ora ho sempre usato la funzione gats() per aquisire intere stringhe senza dover premere invio ad ogni carattere inserito della stringa, ma da quando ho iniziato a programmare su linux ci sono stati dei problemi./tmp/ccjEXwU8.o: In function `main':
    esfork.cpp.text+0xb7): warning: the `gets' function is dangerous and should not be used.
    Giā in fase di compilazioni riscontro questo warning :

    Codice PHP:
    /tmp/ccjEXwU8.oIn function `main':
    esfork.cpp:(.text+0xb7): warning: the 
    `gets' function is dangerous and should not be used. 
    ora volevo chiedervi se conoscete un'altro modo valito, per aquisire direttamente una stringa in un vettore char senza dover premere ogni volta invio.
    Se fate anche qualche esempio mi fate una cortesia, grazie.

    La curiositā č la fonte della conoscenza.

  2. #2
    Utente di HTML.it L'avatar di shodan
    Registrato dal
    Jun 2001
    Messaggi
    2,381
    Usa la fgets di cui ti rimando alla documentazione per approfondimenti.
    codice:
       char t[8];
       fgets(t,8,stdin);

  3. #3
    ho provato la fgets e funziona a meraviglia, ma mi sono appena accorto che la funzione cin() fa esattamente la stessa cosa

    Grazie lo stesso
    La curiositā č la fonte della conoscenza.

  4. #4
    Quale funzione cin() ???
    Non č una funzione standard del C, dove l'hai trovata ?
    01010011 01100001 01101101 01110101 01100101 01101100 01100101 01011111 00110111 00110000
    All errors are undocumented features waiting to be discovered.

  5. #5
    la cin della libreria iostream.h la solita
    La curiositā č la fonte della conoscenza.

  6. #6
    Utente di HTML.it L'avatar di shodan
    Registrato dal
    Jun 2001
    Messaggi
    2,381
    Non č una funzione. E' una variabile. ( per essere precisi č una istanza di std::basic_istream<char> )

  7. #7
    Originariamente inviato da shodan
    Non č una funzione. E' una variabile. ( per essere precisi č una istanza di std::basic_istream<char> )
    :O

    Davvero nuova... buono a saperlo... la stessa cosa immagino sia considerata per il cout?
    Ma scusa allora come si fa a definire qual'č una funzione o un comando di una precisa libreria?
    La curiositā č la fonte della conoscenza.

  8. #8
    Originariamente inviato da P4nico
    la cin della libreria iostream.h la solita
    Lo sospettavo , ma non č utilizzabile in C...
    01010011 01100001 01101101 01110101 01100101 01101100 01100101 01011111 00110111 00110000
    All errors are undocumented features waiting to be discovered.

  9. #9
    Utente di HTML.it L'avatar di shodan
    Registrato dal
    Jun 2001
    Messaggi
    2,381
    Originariamente inviato da P4nico
    Davvero nuova... buono a saperlo... la stessa cosa immagino sia considerata per il cout?
    cout č una istanza di std::basic_ostream<char>.
    Originariamente inviato da P4nico
    Ma scusa allora come si fa a definire qual'č una funzione o un comando di una precisa libreria?
    In che senso definire?
    In genere ci si basa sulla documentazione ( e se non basta si sbircia negli header files ).
    Tieni presente che cin e cout sono abbastanza particolari come variabili, pertanto vengono fornite direttamente dall'header file.

  10. #10
    Originariamente inviato da P4nico
    la cin della libreria iostream.h la solita
    Al di lā del fatto che iostream.h č un header e non una libreria, gli header C++ che terminano con ".h" sono deprecati; devi usare quelli senza ".h".
    codice:
    #include <iostream>
    using namespace std;
    //...
    cout<<"Ciao";
    //...
    Amaro C++, il gusto pieno dell'undefined behavior.

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.