Funktsiooni fwprintf () kaustas C ++ kasutatakse vormindatud laia stringi kirjutamiseks failivoogu.
Funktsioon fwprintf () on määratletud päisefailis.
fwprintf () prototüüp
int fwprintf (FILE * voog, const wchar_t * formaat,…);
Funktsioon fwprintf () kirjutab failivoo voosse laia stringi, millele vormingu järgi osutab. Lai stringivorming võib sisaldada formaadispetsifikaate, mis algavad% -ga ja mis asendatakse funktsiooniga fwprintf () edastatavate muutujate väärtustega täiendavate argumentidena.
fwprintf () parameetrid
- voog: kursor väljundfailivoogu, kuhu sisu on kirjutatud.
- formaat: osutaja nulliga lõppenud laiale stringile, mis on kirjutatud stdouti. See koosneb laiadest märkidest koos valikuliste vorminguspetsifikaatoritega, mis algavad%. Vorminguspetsifikaatorid asendatakse vastavate muutujate väärtustega, mis järgivad vormingut.
Vorminguspetsiifil on järgmised osad:- Juhtiv% märk
- Lipud: valikuliselt üks või mitu lippu, mis muudab konversioonikäitumist.
- -: vasakpoolne põhjendab tulemust väljal. Vaikimisi on see õigustatud.
- +: Tulemuse märk kinnitatakse väärtuse algusesse ka positiivsete tulemuste korral.
- Tühik: kui märki pole, lisatakse tulemuse algusesse tühik.
- #: Teostatakse teisenduse alternatiivne vorm.
- 0: Seda kasutatakse täis- ja ujukomaarvuks. Numbrite sisestamiseks tühiku asemel kasutatakse juhtnulle.
- Laius: valikuline * või täisarv, mida kasutatakse minimaalse laiuse välja määramiseks.
- Täpsus: valikuline väli, mis koosneb a. millele järgneb * või täisarv või mitte midagi täpsuse täpsustamiseks.
- Pikkus: valikuline pikkuse muutja, mis määrab argumendi suuruse.
- Täpsustaja: teisendusvormingu täpsustaja. Saadaval olevad vorminguspetsifikaatorid on järgmised:
Vorminguspetsifikaator Kirjeldus % Prindib% c Kirjutab ühe tähemärgi s Kirjutab märgistringi d või i Teisendab allkirjastatud täisarv kümnendarvudeks o Teisendab allkirjata täisarv kaheksakujuliseks X või x Teisendab allkirjastamata täisarv kuueteistkümnendsüsteemis u Teisendab allkirjata täisarv kümnendarvudeks F või f Teisendab ujukoma numbri kümnendarvuks E või e Teisendab ujukomaarv kümnendkoha astendikuks A või a Teisendab ujukomaarv kuueteistkümnendsüsteemi eksponendiks G või g Teisendab ujukomaarvu kümnend- või kümnendarvulise astendina n Tagastab selle kutsega seni kirjutatud märkide arvu funktsioonile. Tulemus kirjutatakse väärtusele, millele argument osutab lk Kirjutab kursori määratleva rakenduse määratletud märgijada. % (lipud) (laius) (. täpsus) (pikkus) täpsustaja
- …: Muud täiendavad argumendid, mis täpsustavad kirjutatavaid andmeid. Need esinevad järjestuses vastavalt vorminguspetsifikaatorile.
fwprintf () Tagastusväärtus
- Edu korral tagastab funktsioon fwprintf () kirjutatud märkide arvu.
- Rikke korral tagastab negatiivse väärtuse.
Näide: Kuidas funktsioon fwprintf () töötab
#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; )
Programmi käivitamisel kirjutatakse aadressile example.txt järgmine:
Siin on mõned heebrea tähed: א ב ס ד ת