wcstombs() function in C++ STL
Last Updated :
06 Jun, 2022
wcstombs() is a builtin function in C++ STL which converts a wide character string to its equivalent multibyte sequence. It is defined within the cstdlib header file of C++. Syntax
wcstombs(d, s, n)
Parameters:
- d: It is the parameter which specifies the pointer to a character array at least n bytes long.
- s: It is the parameter which specifies wide-character string to be converted.
- n: It is the parameter which specifies maximum number of wide characters to be converted.
Return Value:
- If the conversion is successful then the function returns the number of bytes (not characters) converted and written to the string, excluding the terminating null character(‘\0’).
- If any error is occurred then, -1 is returned.
Program 1:
CPP
#include <cstdlib>
#include <iostream>
using namespace std;
int main()
{
wchar_t s[] = L"GeeksforGeeks";
char d[100];
int n;
n = wcstombs (d, s, 100);
cout << "Number of wide character converted = "
<< n << endl;
cout << "Multibyte Character String = "
<< d << endl;
return 0;
}
|
Output:
Number of wide character converted = 13
Multibyte Character String = GeeksforGeeks
Program 2:
CPP
#include <cstdlib>
#include <iostream>
using namespace std;
int main()
{
wchar_t s[] = L"10@Hello World!";
char d[100];
int n;
n = wcstombs (d, s, 100);
cout << "Number of wide character converted = "
<< n << endl;
cout << "Multibyte Character String = "
<< d << endl;
return 0;
}
|
Output:
Number of wide character converted = 15
Multibyte Character String = 10@Hello World!
Share your thoughts in the comments
Please Login to comment...