C ++: n fwprintf () -funktiota käytetään muotoilun leveän merkkijonon kirjoittamiseen tiedostovirtaan.
Fwprintf () -funktio määritetään otsikkotiedostossa.
fwprintf () -prototyyppi
int fwprintf (FILE * stream, const wchar_t * -muoto,…);
Fwprintf () -funktio kirjoittaa leveän merkkijonon, johon muoto on viitannut, tiedostovirtaan. Laaja merkkijono -muoto voi sisältää% -alkuisia formaattimäärityksiä, jotka korvataan fwprintf () -funktiolle välitettävien muuttujien arvoilla lisäargumentteina.
fwprintf () -parametrit
- virta: Osoitin ulostulotiedostovirtaan, johon sisältö kirjoitetaan.
- muoto: Osoitin nollan päättyneelle leveälle merkkijonolle, joka kirjoitetaan stdout-tiedostoon. Se koostuu leveistä merkeistä sekä valinnaisista muotomäärittimistä, jotka alkavat prosentilla. Formaatin määrittelijät korvataan vastaavien muuttujien arvoilla, jotka seuraavat muotoa.
Formaatin määrittelijässä on seuraavat osat:- Johtava% -merkki
- Liput: Valinnainen yksi tai useampi lippu, joka muuttaa konversiokäyttäytymistä.
- -: Vasen tasaa tuloksen kentässä. Oletuksena se on oikein perusteltu.
- +: Tuloksen merkki liitetään arvon alkuun, myös positiivisten tulosten saamiseksi.
- Välilyönti: Jos merkkiä ei ole, tuloksen alkuun kiinnitetään välilyönti.
- #: Vaihtoehtoinen muunnos suoritetaan.
- 0: Sitä käytetään kokonaislukuun ja liukulukuihin. Numeroita käytetään välilyöntien sijasta etunollia.
- Leveys: Valinnainen * tai kokonaislukuarvo, jota käytetään minimileveyskentän määrittämiseen.
- Tarkkuus: Valinnainen kenttä, joka koostuu a. jota seuraa * tai kokonaisluku tai ei mitään tarkkuuden määrittämiseksi.
- Pituus: Valinnainen pituuden muuttaja, joka määrittää argumentin koon.
- Määritin: Muunnosmuodon määrittelijä. Saatavilla olevat muotomäärittimet ovat seuraavat:
Formaatin määrittelijä Kuvaus % Tulosteet% c Kirjoittaa yhden merkin s Kirjoittaa merkkijonon d tai i Muuntaa allekirjoitetun kokonaisluvun desimaaliedustukseksi o Muuntaa allekirjoittamattoman kokonaisluvun oktaaliedustukseksi X tai x Muuntaa allekirjoittamattoman kokonaisluvun heksadesimaaliluvuksi u Muuntaa allekirjoittamattoman kokonaisluvun desimaaliedustukseksi F tai f Muuntaa liukuluvun desimaaliluvuksi E tai e Muuntaa liukuluvun desimaalilausekkeeksi A tai a Muuntaa liukuluvun luvun heksadesimaalilausekkeeksi G tai g Muuntaa liukuluvun desimaalin tai desimaalin eksponenttimerkinnäksi n Palauttaa tämän kutsun tähän mennessä kirjoittamien merkkien määrän funktioon. Tulos kirjoitetaan argumentin osoittamaan arvoon s Kirjoittaa toteutuksessa määritetyn merkkijonon, joka määrittelee osoittimen. % (liput) (leveys) (. tarkkuus) (pituus) määrittelijä
- …: Muut lisäväitteet, jotka määrittelevät kirjoitettavat tiedot. Ne esiintyvät järjestyksessä muodon määrittelijän mukaan.
fwprintf () Palautusarvo
- Menestyksen jälkeen funktio fwprintf () palauttaa kirjoitettujen merkkien määrän.
- Epäonnistumisen yhteydessä se palauttaa negatiivisen arvon.
Esimerkki: Kuinka funktio fwprintf () toimii
#include #include #include int main() ( wchar_t hebrew_str() = L"u05D0 u05D1 u05E1 u05D3 u05EA"; FILE *fp = fopen("example.txt","w"); setlocale(LC_ALL, "en_US.UTF-8"); fwprintf(fp, L"Here are some Hebrew letters: %ls", hebrew_str); fclose(fp); return 0; )
Kun suoritat ohjelman, seuraava kirjoitetaan esimerkkiin.txt:
Tässä on joitain heprean kirjaimia: א ב ס ד ת