Kirjoittaako printf stdoutiin?
Kirjoittaako printf stdoutiin?

Video: Kirjoittaako printf stdoutiin?

Video: Kirjoittaako printf stdoutiin?
Video: Kirjoittaako kahvila nimesi tahallaan väärin? Salaliittopodi 124 2024, Marraskuu
Anonim

printf () - ja joitain muita "tulostus"toimintoja, kuten puts() - kirjoittaa vakiolähtöön , tunnetaan myös stdout tai lopulta Tiedostokuvaaja 1.fprintf(stderr, …) - kirjoittaa sen ulostulo standardivirheeseen ulostulo , joka tunnetaan myös nimellä stderr tai File Descriptor2.

Vastaavasti mikä on vakiotulostus?

Vakiolähtö , joskus lyhennettynä stdout , viittaa standardoituihin tietovirtoihin, joita komentoriviohjelmat (eli koko tekstitilan ohjelmat) tuottavat Linuxissa ja muissa Unix-tyyppisissä käyttöjärjestelmissä. Koska standardi virrat ovat pelkkää tekstiä, ne ovat määritelmän mukaan ihmisen luettavissa.

Tämän jälkeen kysymys kuuluu, mitä järjestelmäkutsua printf käyttää? printf () on yksi sovellusliittymistä tai käyttöliittymistä, joille käyttäjätila altistuu soittaa puhelimella toimintoja C-kirjastosta. printf () itse asiassa käyttää kirjoittaa() järjestelmäpuhelu . The write() järjestelmäpuhelu on itse asiassa vastuussa tietojen lähettämisestä ulostuloon.

Kun tämä pidetään mielessä, mikä on stdin ja stdout?

Jos ymmärrykseni on oikea, stdin on tiedosto, johon ohjelma kirjoittaa pyyntöihinsä suorittaakseen tehtävän prosessissa, stdout on tiedosto, johon ydin kirjoittaa tulostensa ja sitä pyytävä prosessi käyttää tietoja, ja stderr on tiedosto, johon kaikki poikkeukset syötetään.

Mikä on vakiotulo ja -lähtö?

The vakiotulo laite, jota kutsutaan myös nimellä stdin , on laite, josta syöttö järjestelmään on otettu. The vakiolähtö laite, jota kutsutaan myös asstdoutiksi, on laite, johon ulostulo järjestelmästä puuttuu. Yleensä tämä on näyttö, mutta voit ohjata uudelleen ulostulo sarjaporttiin tai tiedostoon.