Функция fwide () в C ++ либо пытается установить ориентацию, либо запрашивает текущую ориентацию данного файлового потока.
Функция fwide () определена в заголовочном файле.
fwide () прототип
int fwide (FILE * поток, режим int);
В зависимости от значения режима определяется, что делает функция fwide.
- Если
mode> 0
эта функция пытается сделать поток широко ориентированным. - Если
mode < 0
эта функция пытается сделать поток побайтно-ориентированным. - Если
mode == 0
эта функция запрашивает только текущую ориентацию потока. - Если ориентация потока уже была определена путем выполнения вывода или более раннего вызова fwide, эта функция ничего не делает.
fwide () Параметры
- stream: указатель на файловый поток для установки или запроса ориентации.
- mode: целочисленное значение, определяющее, устанавливать или запрашивать ориентацию потока.
fwide () Возвращаемое значение
Функция fwide () возвращает:
- Положительное целое число, если поток широко ориентирован.
- Отрицательное целое число, если поток ориентирован на байты.
- Ноль, если поток не имеет ориентации.
Пример: как работает функция fwide ()?
#include #include #include using namespace std; int main() ( FILE *fp; int retVal; fp = fopen("file.txt","r"); retVal = fwide(fp,0); if (retVal == 0) cout << "Stream has no orientation" < 0) cout << "Stream is wide-oriented" << endl; else cout << "Stream is byte-oriented" << endl; /* wide oriented stream */ cout << "Setting stream to wide-orientation" << endl; retVal = fwide(fp,1); if (retVal == 0) cout << "Stream has no orientation" < 0) cout << "Stream is wide-oriented" << endl; else cout << "Stream is byte-oriented" << endl; return 0; )
Когда вы запустите программу, вывод будет:
У потока нет ориентации Настройка потока на широкую ориентацию Поток широко ориентирован