Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1

    [C]appena iniziato, un paio di dubbi

    ho iniziato ieri a studiare il C, leggendo la guida che c'è nel sito, e sto provando questo script:

    Codice PHP:
    #include <stdio.h>

    main()
    {
      
    int ch0;

      while((
    ch getchar()) != EOF)
        
    ++;

      
    printf("%dn"i);

    questo dovrebbe visualizzare quello che scrivo con la tastiera, e in effetti lo fa. In oltre premento ctrl+D il programma si dovrebbe interrompere (cosi c'è scritto nella guida) ma questo non lo fa

    poi... ho ridotto il programma a questo
    Codice PHP:
    #include <stdio.h>

    main() {
      
    getchar();

    e funziona allo stesso modo mi pare un po' strano... qualcuno mi può aiutare? In fin dei conti sono solo all'inizio e questa probabilmente per voi è una domanda banale
    uh? eh ? cosa?

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Che vuol dire "hai ridotto il programma" ?

    Sono due programmi (non script) diversi !

  3. #3
    nel senso che togliendo un po' di cose (per vedere cosa succedeva) il risultato è lo stesso
    uh? eh ? cosa?

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Mi pare di no ... il primo visualizza un risultato con l'ultima istruzione, il secondo no!

    Come e' possibile che il programma faccia le stesse cose, se il primo ha istruzioni e variabili in piu'?

  5. #5
    è quello ke sto cercando di capire.

    Teoricamente il primo visualizza quante volte ho premuto un tasto, invece mi visualizza quello ke scrivo... e lo stesso il secondo
    uh? eh ? cosa?

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Devi pressare Ctrl-Z seguito da Return per interrompere ...

    P.S. In questa riga

    printf("%dn", i);

    manca il backslash ... deve essere

    printf("%d\n", i);

  7. #7
    Originariamente inviato da oregon
    Mi pare di no ... il primo visualizza un risultato con l'ultima istruzione, il secondo no!

    Come e' possibile che il programma faccia le stesse cose, se il primo ha istruzioni e variabili in piu'?
    Secondo me non ha ricompilato...
    Amaro C++, il gusto pieno dell'undefined behavior.

  8. #8
    Senza dubbio...
    Il primo legge fino ad un carattere e restituisce il numero di battute
    Il secondo blocca il prog fino all'inserimento di un carattere
    Experience is what you get when you don’t get what you want

  9. #9
    ovvio che ho ricompilato

    Devi pressare Ctrl-Z seguito da Return per interrompere ...

    P.S. In questa riga

    printf("%dn", i);

    manca il backslash ... deve essere

    printf("%d\n", i);
    grazie mille

    resta il fatto che il programma non fa quello che dovrebbe fare :berto:

    in più:

    Codice PHP:
    #include <ctype.h>
    #include <stdio.h>
    main()
    {
    int ch;

      while((
    ch getchar()) != EOF)
        
    putchar(toupper(ch));

    questo dovrebbe visualizzare quello che digito scritto in maiuscolo, però non lo fa... comincio a pensare di non essere fortunato con questo linguaggio :master:
    uh? eh ? cosa?

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da Frankenstein88
    resta il fatto che il programma non fa quello che dovrebbe fare :berto:
    Ma che vuol dire "non fa quello che dovrebbe fare" ???

    Originariamente inviato da Frankenstein88
    questo dovrebbe visualizzare quello che digito scritto in maiuscolo, però non lo fa...
    Non quello che digiti carattere per carattere ma la frase che inserisci e una volta che hai pressato il return ...

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 © 2025 vBulletin Solutions, Inc. All rights reserved.