Desidero sopprimere l'output di variabili in un set di funzioni Matlab. Il problema è che l'autore dimentica il ";" in molte posizioni nel codice. A scopo di debug questo output è utile ma ora voglio sopprimerlo, senza cercare l'intero codice per il mancante ";". C'è la possibilità di disattivare questo tipo di output?Soppressione uscita
risposta
È possibile sopprimere l'output utilizzando evalc, ma ciò richiede di passare l'espressione come stringa. Per esempio se si sta utilizzando:
[A,B,C] = notMyFunction(d,e,f);
È possibile utilizzare invece
[T,A,B,C] = evalc('notMyFunction(d,e,f);');
E qualsiasi output che sarebbe andato alla console sarà ora tamponato e conservati in T
.
E a proposito di chiamare quelle funzioni con un punto e virgola alla fine? Così, invece di chiamare
my_function()
è sufficiente digitare
my_function();
Edit: http://www.mathworks.de/help/techdoc/ref/evalc.htmlevalc('my_function()');
Edit2: Troppo tardi
Ci dispiace, ma non v'è alcun modo semplice per trasformare appena fuori il display al comando finestra quando non si riesce ad aggiungere punti e virgola. Basta aggiungere il punto e virgola da soli.
Sì, è possibile sovraccaricare disp e display, impedendo loro di funzionare come dovrebbero, ma in tal caso non funzionerebbero anche in circostanze normali. Ti spezzerebbe una parte preziosa di MATLAB.
E scusa, ma l'aggiunta di un punto e virgola alla fine di una chiamata di funzione non ha alcun impatto sul fatto che le linee interne non abbiano un punto e virgola. Quelle linee internamente non terminate continueranno a scaricare i loro risultati nella finestra di comando.
quando si chiama la funzione, è necessario mettere un segno ";" alla fine, altrimenti l'output sarebbe visualizzato, non importa per la funzione utente o le funzioni preimpostate MATLAB.
La domanda non era di sopprimere l'output dei valori di ritorno di una chiamata di funzione. La domanda era di sopprimere l'output di tutte le chiamate di funzioni annidate che potrebbero mancare; cartello. Quindi l'evalc è la risposta. –
- 1. Soppressione make uscita di errore regola
- 2. uscita Soppressione di oggetto durante la stampa in ipython
- 3. Soppressione di un trattino "." in uscita numerica da Mathematica
- 4. Soppressione degli avvisi PDO
- 5. checkstyle + filtri di soppressione
- 6. Soppressione dell'output di funzione
- 7. Soppressione degli avvertimenti Doxygen
- 8. Soppressione violazioni in PMD
- 9. Soppressione dell'output di gc()
- 10. Soppressione panico uscita a Rust quando si utilizza il panico :: catch_unwind
- 11. Avviso di soppressione per rsOverlappingReportItems
- 12. Soppressione dell'output di debug sbt
- 13. Errore di soppressione @ Non funziona
- 14. Soppressione avvisi di sfratto SBT
- 15. Soppressione ritorni impliciti a Swift
- 16. Soppressione di avvertimenti Microsoft Fake
- 17. Uscita cronometrica uscita
- 18. Soppressione su: vuoto nell'output di stampa di WinForms WebBrowser
- 19. Soppressione " '...' is deprecated" quando si usa respondsToSelector
- 20. avviso di soppressione per codice C# generato
- 21. Soppressione dell'uscita cout con una funzione
- 22. WebStorm - Soppressione avviso param inutilizzato JavaScript
- 23. Soppressione di avvisi obsoleti in VB.NET
- 24. Soppressione dell'output nelle chiamate Python agli eseguibili
- 25. Soppressione degli avvisi LINQ to SQL DBML
- 26. Soppressione contenuto modificabile con binding personalizzato
- 27. Soppressione dell'output di un comando in R
- 28. Soppressione delle chiamate per la stampa (python)
- 29. @ gestore soppressione degli errori e set_error_handler
- 30. C++ Soppressione Inizializzazione e distruzione automatiche
Possibile duplicato di questo: [http://stackoverflow.com/questions/3029636/suppressing-a-functions-command-window-output-in-matlab](http://stackoverflow.com/questions/3029636/soppressione-a-funzioni-comando-finestra-uscita-in-matlab) La risposta è stata: "Si potrebbe provare a racchiudere la chiamata alla funzione in un [evalc] (http://www.mathworks.com/help/ TECHDOC/ref/evalc.html)." –