Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,657

    [C++] - Clear Screen senza conio.h

    C'è un modo per cancellare lo schermo senza usare conio.h?
    Non mi dite di fare 100 \n perché nn mi convince...

  2. #2
    sotto windows
    system("cls");


  3. #3
    Utente di HTML.it L'avatar di Mods
    Registrato dal
    Jun 2004
    Messaggi
    302
    posso chiederti x curiosità come mai non ti piace la clrscr() ??
    Ci sono 10 tipi di persone al mondo: quelli che conoscono il codice binario, e quelli che non lo conoscono!

  4. #4
    non gli piace perchè non è standard

    il system ('cls/clear') non è multipiattaforma

    l'unico modo sicuro è davvero fare un ciclo con 100 \n
    Vinum dolce gloriosum
    pingue facit et carnosum
    Vinum forte,vinum purum
    reddit hominem securum

  5. #5
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,657
    ma fare 100 \n, il testo parte nella parte bassa dello schermo e non più nella parte alta dello schermo come faceva clrscr. Avevo pensato a gotoxy, cosa che fa parte della libreria conio.h

    Ma posso crederci che in 40 di c++ nn si riesce a cancellare lo schermo ma si possono fare i sistemi operativi???

  6. #6
    Beh per il semplice fatto che voler cancellare lo schermo è una cosa un pò assurda, e puramente estetica

    Accontentati di uno dei 3 modi sapendo che :

    1)100 /n ti mette il cursore all'ultima linea
    2)System non è portabile
    2) Conio.h non è standard

    Scegli quella che ti piace di più

    Lo standard ansi non prevede funzioni per cancellare lo schermo, im sorry ...

    Al massimo se proprio fossi esasperato potresti provare ad usare dell' assembly inline , ma qui non saprei aiutarti..
    Vinum dolce gloriosum
    pingue facit et carnosum
    Vinum forte,vinum purum
    reddit hominem securum

  7. #7
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,657
    ma ke vuol dire nn cancellare lo schermo perché è una cosa estetica...anche le finestre di windows sn cose puramente estetiche, ma intanto si usano...

  8. #8
    Utente di HTML.it L'avatar di netarrow
    Registrato dal
    Apr 2004
    Messaggi
    1,425
    Ma posso crederci che in 40 di c++ nn si riesce a cancellare lo schermo ma si possono fare i sistemi operativi???
    ...
    ma ke vuol dire nn cancellare lo schermo perché è una cosa estetica...anche le finestre di windows sn cose puramente estetiche, ma intanto si usano...
    tutte queste frasi sono collegate e ti autorispondi: dipende dal sistema operativo; se fai un sistema operativo ma non crei minimamente un supporto per cancellare lo schermo, non puoi cancellarlo; se sei in windows c'è il comando cls appunto, in linux(forse tutti i Unix like) clear.
    Ciò che fanno a livello di system call lo trovi ad esempio, pe windows, qui: http://msdn.microsoft.com/library/de..._reference.asp

    La referenza di windows per gestire la sua console.

    A livello assemblay non saprei aiutarti, ma userà interrupt del dos e si ricade nel discorso che dipende dal sistema.

    In linux oltre il comando clear non saprei come funziona tecnicamente.

    Alla peggio fai un

    codice:
    #ifdef _WIN
    const char* pulisci = "cls";
    #elseif 
    #ifdef LINUX
    const char* pulisci = "clear";
    #else
    #error "OS NOT SUPPORTED"
    #endif
    ...
    system(pulisci);
    I define sono automatici, nel senso che il compilatore definisce già di suo le direttive a seconda del sistema(almeno i più comuni).

    Sennò fai i \n e rimetti su il carret con quest'api: http://msdn.microsoft.com/library/de...orposition.asp

    Non serve nessun conio, niente di niente, solo windows.

    Imparare è un'esperienza, tutto il resto è solo informazione. (Albert Einstein)

  9. #9
    Originariamente inviato da FinalFantasy
    Ma posso crederci che in 40 di c++ nn si riesce a cancellare lo schermo ma si possono fare i sistemi operativi???
    Si puo` fare eccome, ma non non in modo portabile, ovvero indipendente dal sistema operativo. Il che, a ben pensarci, e` anche ragionevole.
    "Qualsiasi esperto ha paura di combattere usando la katana vera. Anch'io. Ma non ignoro la mia paura, riesco ad accettarla, e a metterla da parte accanto a me".

  10. #10
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,657
    Originariamente inviato da netarrow
    Non serve nessun conio, niente di niente, solo windows.
    e linux dove lo metti?

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.