A novidade do programa de coreografia para crianças superdotadas. O programa de educação complementar para o trabalho com crianças superdotadas “O Mundo da Dança. O tema da minha palestra "" é relevante, devido à necessidade social de identificar jovens talentos, desenvolver habilidades criativas

A novidade do programa de coreografia para crianças superdotadas. O programa de educação complementar para o trabalho com crianças superdotadas “O Mundo da Dança. O tema da minha palestra "" é relevante, devido à necessidade social de identificar jovens talentos, desenvolver habilidades criativas

Padrão POSIX tem seu próprio método para obter o tamanho do arquivo.
Inclua o cabeçalho sys/stat.h para usar a função.

resumo

  • Obtenha estatísticas de arquivos usando stat(3) .
  • Obtenha a propriedade st_size.

Exemplos

Observação. O tamanho é limitado a 4 GB. Se não for um sistema Fat32 Fat32, use a versão de 64 bits!

#incluir #incluir int main(int argc, char** argv) ( struct stat info; stat(argv, &info); // "st" é um acrônimo de "stat" printf("%s: size=%ld\n", argv , info.st_size); ) #include #incluir int main(int argc, char** argv) ( struct stat64 info; stat64(argv, &info); // "st" é um acrônimo de "stat" printf("%s: size=%ld\n", argv , info.st_size); )

ANSI C (padrão)

ANSI C não fornece uma maneira direta de determinar o comprimento de um arquivo.
Teremos que usar nossa mente. Agora vamos usar a abordagem de pesquisa!

resumo

  • Encontre o arquivo até o final usando fseek(3) .
  • Obtenha a posição atual usando ftell(3) .

exemplo

#incluir int main(int argc, char** argv) ( FILE* fp = fopen(argv); int f_size; fseek(fp, 0, SEEK_END); f_size = ftell(fp); rewind(fp); // para voltar para iniciar novamente printf("%s: size=%ld", (unsigned long)f_size); )

Se o arquivo for stdin ou pipe. POSIX, ANSI C não funciona.
Retornará 0 se o arquivo for um pipe ou stdin padrão.

Opinião: Você deve usar o padrão em vez disso POSIX. Porque tem suporte de 64 bits.