Questo significa semplicemente che qualsiasi cosa facciamo con oggetto come cout viene sincronizzata con stdout (e viceversa?). Cosa significa esattamente? Anche lo stdio è sincronizzato con stdout?Qual è il significato esatto di iostream è sincronizzato con ios_base :: sync_with_stdio
risposta
L'ostream predefinita utilizzata da std :: cout e stdio (come printf) è stdout, ma non è necessariamente così.
L'uscita potrebbe essere sempre reindirizzata all'altra destinazione. Riferimento a questo: http://www.tldp.org/LDP/abs/html/io-redirection.html
Per cppreference:
Sets whether the standard C++ streams are synchronized to
the standard C streams after each input/output operation.
Se la sincronizzazione è disattivata, in alcuni casi i flussi C++ saranno più veloci.
Per impostazione predefinita, tutti gli stream C++ standard sono sincronizzati con i rispettivi flussi C.
Esempio:
#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
cout.sync_with_stdio(false);
cout << "Hello\n";
printf("World\n");
cout << "...\n";
}
uscita:
Hello
...
World
Cambiare a true
dà risultato di default in ordine. Uscita:
Hello
World
...
@POW Quindi, posso trarre conclusioni, se non in sincronia, cout/printf non può garantire l'ordine o addirittura non può garantire che le cose vengano stampate? –
@pranitkothari non necessariamente, un 'endl' cambierà scenario anche con sincronizzazione disattivata – P0W
@POW sicuro, ma che dire senza endl che sto chiedendo. Conosco il buffer di flush endl. Ma cosa senza. –
- 1. Qual è il significato esatto dell'annotazione JPA @Entity?
- 2. Qual è il significato di ∃?
- 3. Qual è il significato dell'operatore &?
- 4. Qual è il significato dell'operatore || =
- 5. Qual è il significato esatto del processore di bit 'N'? , chiarimento per l'arco di Freescale
- 6. Qual è il significato di [...] in python?
- 7. Qual è il significato di "==" in C?
- 8. Qual è il significato di <#= #>
- 9. Qual è il significato di main_syntax
- 10. qual è il significato di "this.this $ 0"?
- 11. Qual è il significato SQL di 0x5E5B7D7E?
- 12. Qual è il significato di CTOR?
- 13. Qual è il significato di "Unità eroe"?
- 14. Qual è il significato di questo typedef?
- 15. Qual è il significato di -532459699?
- 16. Qual è il significato di svg: svg?
- 17. Qual è il significato di "_" in python?
- 18. Qual è il significato di questa sintassi?
- 19. Qual è il significato di 'sourceSets.all *'
- 20. Qual è il significato di! #: 3?
- 21. Qual è il significato di id?
- 22. Qual è il significato di [...] regex?
- 23. Qual è il significato di @_ in Perl?
- 24. Qual è il significato di System.CLSCompliantAttribute?
- 25. Symfony: Qual è il significato di auto_mapping e auto_generate_proxy_classes utilizza
- 26. è sincronizzato il metodo Collection toArray() sincronizzato?
- 27. Qual è il significato di addToBackStack con parametro null?
- 28. Qual è il significato di iniziare le costanti con 'k'?
- 29. Qual è il significato dell'operatore == <>?
- 30. Qual è il significato dell'errore NSXMLParserErrorDomain 5.?
Ciò significa che è possibile eseguire l'output su un dispositivo simile alla stampante mediante cout. Se possibile, puoi suggerire il modo. –
@pranitkothari Sì. Il problema è ottenere il descrittore del file del dispositivo e reindirizzare cout (con un descrittore di file 1). Puoi farlo in linea di comando. Il link sopra potrebbe darti qualche idea. – lulyon