Funkcija vwprintf () C ++ naudojama norint suformatuotą plačią eilutę rašyti į stdout.
Funkcija vwprintf () yra apibrėžta antraštės faile.
„vwprintf“ () prototipas
int vwprintf (const wchar_t * formatas, va_list vlist);
Funkcija „vwprintf ()“ rašo plačią eilutę, nurodytą formatu, į „stdout“. Plataus eilutės formate gali būti formato specifikatoriai, prasidedantys%, kurie yra pakeisti kintamųjų, perduotų kaip sąrašo vlist, vertėmis.
vwprintf () parametrai
- formatas: nerodomos plačios eilutės, kuri parašyta „stdout“, žymeklis. Ją sudaro simboliai ir neprivalomi formato specifikatoriai, prasidedantys%. Formato specifikatoriai pakeičiami atitinkamų kintamųjų reikšmėmis, atitinkančiomis formatą.
Formato specifikatoriuje yra šios dalys:- Pirmaujantis% ženklas
- Žymos: pasirinktinai viena ar kelios žymos, modifikuojančios konversijos elgseną.
- -: kairė pateisina rezultatą lauke. Pagal nutylėjimą tai yra teisinga.
- +: Rezultato ženklas pridedamas prie vertės pradžios, net jei teigiami rezultatai.
- Erdvė: jei nėra ženklo, rezultato pradžioje pridedama tarpas.
- #: Atliekama alternatyvi konversijos forma.
- 0: Jis naudojamas sveikam skaičiui ir slankiojo kablelio skaičiui. Skaičių užpildymui vietoj tarpo naudojami priekiniai nuliai.
- Plotis: neprivaloma * arba sveiko skaičiaus vertė, naudojama nurodyti minimalaus pločio lauką.
- Tikslumas: neprivalomas laukas, kurį sudaro a. po kurio * arba sveikas skaičius arba nieko, kad būtų galima nurodyti tikslumą.
- Ilgis: pasirinktinis ilgio modifikatorius, nurodantis argumento dydį.
- Specifikatorius: konversijos formato specifikatorius. Galimi formatų parametrai yra šie:
Formato specifikatorius apibūdinimas % Spausdina% c Rašo vieną veikėją s Rašo simbolių eilutę d arba aš Konvertuoja pasirašytą sveikąjį skaičių į dešimtainį vaizdą o Konvertuoja nepasirašytą sveikąjį skaičių į aštuonetinį vaizdą X arba x Konvertuoja nepasirašytą sveikąjį skaičių į šešioliktainį vaizdą u Konvertuoja nepasirašytą sveikąjį skaičių į dešimtainį vaizdą F arba f Konvertuoja slankiojo kablelio skaičių dešimtainiu skaičiumi E arba e Konvertuoja slankiojo kablelio skaičių dešimtainio laipsnio rodikliu A arba a Konvertuoja slankiojo kablelio skaičių į šešioliktainį rodiklį G arba g Konvertuoja slankiojo kablelio skaičių dešimtainiu arba dešimtainiu laipsnių rodikliu n Grąžina iki šiol šiuo skambučiu parašytų simbolių skaičių funkcijai. Rezultatas įrašomas į argumento nurodytą vertę p Rašo įgyvendinimo apibrėžtą simbolių seką, apibrėžiančią žymeklį.
Taigi bendras formato specifikatoriaus formatas yra:% (vėliavos) (plotis) (. tikslumas) (ilgis) specifikatorius
- vlist: argumentų, kuriuose yra spausdintini duomenys, sąrašas.
vwprintf () Grąžinimo vertė
- Jei pavyks, funkcija vwprintf () grąžina parašytų plačių simbolių skaičių.
- Sugedus ji grąžina neigiamą vertę.
Pavyzdys: Kaip veikia vwprintf () funkcija?
#include #include #include void write(const wchar_t *fmt,… ) ( va_list args; va_start(args, fmt); vwprintf(fmt, args); va_end(args); ) int main () ( wchar_t desc(5)(10) = (L"Eta",L"Theta",L"Iota",L"Kappa",L"Lamda"); int x = 0; setlocale(LC_ALL, "en_US.UTF-8"); wprintf(L"Some Greek Letters"); for (wchar_t i=L'u03b7'; i<=L'u03bb'; i++) ( write(L"%ls : %lc", desc(x), i); x++; ) return 0; )
Kai paleisite programą, išvestis bus:
Keletas graikų raidžių Eta: η Theta: θ Iota: ι Kappa: κ Lamda: λ