O uso do método FSCANF em C

O uso do método FSCANF em C
O método fscanf () em C é usado para ler dados de qualquer arquivo. Esta função lê do fluxo de dados ou, mais precisamente, extrai uma coleção de caracteres de um arquivo. Além disso, esse método lê o caminho no formato de byte, analisa os dados de acordo com o formato e mantém a configuração em seu parâmetro para saída. Ele interpreta de um arquivo que também possui uma referência, eu.e., um ponteiro de arquivo, que permite recuperar uma parte especificada do arquivo em vez de todo o fluxo. Vamos dar uma olhada mais profunda na função fScanf ():

Acesse os dados personalizados de um fluxo:

Aqui, pegamos dados do fluxo e os salvamos nos locais especificados pelos diferentes parâmetros, conforme a especificação do argumento. Os parâmetros subsequentes podem estar relacionados aos itens da categoria fornecidos por seu identificador de formatação apropriado na sequência do formato que já foi criada.

Nesse caso, estamos criando um arquivo específico e recuperando o nome e a cor da fruta. Temos um arquivo chamado “arquivo.txt ”que teremos formado, como mostrado abaixo:

#incluir
int main ()

Arquivo *fPointer;
char fn [20];
CHAR CLR [20];
fpointer = fopen ("arquivo.txt "," w+");
if (fpointer == null)

printf ("arquivo não encontrado. \ n ");
retornar 0;

printf ("Nome da fruta \ n");
scanf ("%s", fn);
fprintf (fPointer, "Nome da fruta = %s \ n", fn);
printf ("cor da fruta \ n");
scanf ("%s", clr);
fprintf (fpointer, "cor da fruta = %s \ n", clr);
fclose (fpointer);

Temos que integrar o arquivo de cabeçalho #include, apesar de trabalhar com a função fScanf (). Se não incluímos este arquivo de cabeçalho, obtemos o erro. Agora, inicializamos o método principal (). Podemos iniciar a programação dentro do corpo desta função.

Primeiro, criamos um "fpointer" do construtor para o arquivo. Além disso, declaramos duas variáveis: "FN" e "CLR", com caracteres de tipo de dados. Utilizamos a função FOPEN () para abrir o arquivo definido. Em seguida, aplicamos a condição if. Se o arquivo definido não estiver presente no sistema, a função printf () imprime “arquivo não encontrado”.

Além disso, aplicamos diferentes funções para diferentes fins. Empregamos a função scanf (). Esta função lê o nome da fruta do arquivo especificado. Em seguida, a função fprintf () é usada para imprimir o "nome da fruta" e armazenada na variável "fn". Da mesma forma, utilizamos novamente o método scanf () para obter a cor da fruta do arquivo. Esta função fprintf () também é aplicada para imprimir a “cor da fruta”. Agora, o valor da cor é armazenado em sua variável "CLR". No final, declaramos a função fclose () para fechar o arquivo definido.

Converta o número hexadecimal em número decimal:

O método fscanf () fornece o número de elementos de entrada com precisão correspondente e alocados. As transições que foram feitas, mas talvez não delegadas, nunca são incluídas no valor resultante. Um número inteiro hexadecimal é usado como entrada para um identificador de transformação %x, conforme fornecido abaixo:

#incluir
int main (vazio)

int num;
printf ("Digite um número hexadecimal: \ n");
while (scanf ("%x", & num))

printf ("número hexadecimal = %x \ n", num);
printf ("Número decimal = %d \ n", num);

Depois de introduzir o arquivo de cabeçalho, definimos a função principal (). Na próxima etapa, inicializamos uma variável chamada "num", que possui um número inteiro de dados dentro do corpo da função principal (). A função printf () é aplicada para obter qualquer número hexadecimal do usuário. Então, utilizamos o loop while. Este loop termina se o número inserido não for um número hexadecimal. Enquanto isso, empregamos o método scanf (), que converte o número hexadecimal em um número decimal. O sinal percentual (%) e o número inserido são passados ​​como parâmetros para o método scanf ().

Aqui, o símbolo por cento (%) fornece requisitos de conversão. Este identificador de conversão instrui a função scanf () sobre como ler e transformar caracteres da entrada em conversão de dados de string de formato. Na lista de parâmetros, o valor é alocado para uma das variáveis. O método scanf () lê o arquivo especificado da esquerda para a direita. Palavras fora dos parâmetros de conversão estão previstas para ajustar a sequência de caracteres do fluxo de entrada; enquanto as letras relevantes no arquivo de entrada são analisadas, mas não salvas.

A função termina com um erro "idêntico" se uma palavra no fluxo de entrada contradiz o arquivo. Se a palavra contraditória pode não ter sido lida, ela é deixada no fluxo de dados. Aplicamos novamente o método printf () para imprimir um número hexadecimal e um número decimal. Esses números são armazenados na variável "num". como mostrado abaixo:

Obtenha o nome e o status do funcionário:

Nesse caso, leremos os dados do funcionário de um arquivo. Em seguida, obtenha o nome e o status do funcionário:

#incluir
int main ()

Arquivo *fPointer;
CHAR EMPNAME [30];
status de char [30];
fpointer = fopen ("arquivo.txt "," w+");
if (fpointer == null)

printf ("o arquivo não é encontrado. \ n ");
retornar 0;

printf ("Nome do funcionário \ n");
scanf ("%s", empname);
fprintf (fpointer, "nome = %s \ n", empname);
printf ("status do funcionário \ n");
scanf ("%s", status);
fprintf (fpointer, "status = %s \ n", status);
fclose (fpointer);

Antes de escrever o código no corpo da função principal (), devemos incluir o arquivo de cabeçalho . Este arquivo de cabeçalho é necessário para entrada e saída. A função principal () agora é inicializada e fazemos um ponteiro para o arquivo.

Além disso, definimos as variáveis ​​de tipo de dados de dois caracteres, "EmpName" e "Status". Para acessar o arquivo necessário, estamos usando o método FOPEN (). Enquanto isso, o caminho e o modo do arquivo são fornecidos como argumentos para a função FOPEN (). Então, usamos a condição if. O comando printf () imprime “arquivo não encontrado” se o arquivo definido não estiver disponível.

Além disso, o método scanf () é aplicado. O nome do funcionário é recuperado desse arquivo especificado usando esta função. Em seguida, a função fprintf () é usada para mostrar o "nome do funcionário", que é salvo na variável "EmpName". Da mesma forma, estamos usando a função scanf () para adquirir o status do funcionário do arquivo. O método fprintf () também será utilizado para exibir o "status do funcionário". Isso será salvo na variável "status".

Finalmente, definimos o método fclose (), que fechará o arquivo definido.

Conclusão:

Neste artigo, discutimos o processo do método fScanf () em c. Utilizamos o método fScanf () para extrair informações de um arquivo. Geralmente mantém dois fluxos de argumentos e formatos. Também exploramos maneiras de implementar esta função. Esse recurso é especialmente útil quando precisamos ler informações específicas de um arquivo e não todo o fluxo. Podemos converter o valor hexadecimal em valor decimal usando esta função. Esperamos que você tenha achado este artigo útil. Verifique os outros artigos de dica do Linux para obter mais dicas e tutoriais.