std::fread
Da cppreference.com
![]() | This page has been machine-translated from the English version of the wiki using Google Translate. The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
Definido no cabeçalho <cstdio> | ||
std::size_t fread(void* buffer, std::size_t size, std::size_t count, std::FILE* stream ); | ||
Lê-se a objetos
count
no buffer
matriz do fluxo de entrada dada stream
como se chamando std::fgetcsize
vezes para cada objeto, e armazenando os resultados, na ordem obtida, para as posições sucessivas de buffer
, que é reinterpretado como uma matriz de unsignedchar. O indicador de posição de arquivo do fluxo é avançada pelo número de caracteres lidos.Original:
Reads up to
count
objects into the array buffer
from the given input stream stream
as if by calling std::fgetcsize
times for each object, and storing the results, in the order obtained, into the successive positions of buffer
, which is reinterpreted as an array of unsignedchar. The file position indicator for the stream is advanced by the number of characters read.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Se os objetos não são
TriviallyCopyable
, o comportamento é indefinido.Original:
If the objects are not
TriviallyCopyable
, the behavior is undefined.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Se ocorrer um erro, o valor resultante do indicador de posição de arquivo do fluxo é
Original:
If an error occurs, the resulting value of the file position indicator for the stream is
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
indeterminado. Se um elemento parcial é lido, o seu valor é indeterminado
Original:
indeterminate. If a partial element is read, its value is indeterminate
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Índice |
[editar]Parâmetros
buffer | - | ponteiro para o primeiro objeto na matriz para ser lido Original: pointer to the first object in the array to be read The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
size | - | tamanho de cada objeto em bytes Original: size of each object in bytes The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
count | - | o número de objetos a serem lidos Original: the number of the objects to be read The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
[editar]Valor de retorno
Número de objetos lido com sucesso, o que pode ser inferior a
count
se uma condição de erro ou de fim-de-arquivo ocorre. Original:
Number of objects read successfully, which may be less than
count
if an error or end-of-file condition occurs. The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Se
size
ou count
é zero, fread
retorna zero e não executa nenhuma outra ação.Original:
If
size
or count
is zero, fread
returns zero and performs no other action.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[editar]Exemplo
#include <iostream>#include <cstdio>#include <fstream>#include <vector>int main(){// prepare filestd::ofstream("test.txt")<<1<<' '<<2<<'\n';std::FILE* f =std::fopen("test.txt", "r"); std::vector<char> buf(4);// char is trivally copyable std::fread(&buf[0], sizeof buf[0], buf.size(), f); for(char n : buf)std::cout<< n; std::vector<std::string> buf2;// string is not trivially copyable// this would result in undefined behavior// std::fread(&buf2[0], sizeof buf2[0], buf2.size(), f);}
Saída:
1 2
[editar]Veja também
lê entrada formatada de stdin, um fluxo de arquivo ou um tampão Original: reads formatted input from stdin, a file stream or a buffer The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (função) | |
recebe uma cadeia de caracteres a partir de um fluxo de arquivo Original: gets a character string from a file stream The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (função) | |
grava em um arquivo Original: writes to a file The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (função) | |
Documentação C para fread |