Sintaxe
A sintaxe da função aberta () na linguagem C é dada abaixo. Vamos discutir seus parâmetros:
int aberto (const char* caminho, int sinalizadores [, int mode]);
Caminho
Path é o título do arquivo que você gostaria de abrir ou criar. Também se refere à localização do arquivo. Se não estivermos trabalhando no mesmo diretório que o arquivo, podemos fornecer um caminho absoluto que começa com "/". Podemos especificar alternativamente um caminho relativo em que, em alguns casos, apenas mencionamos o nome do arquivo e a extensão.
Bandeiras
Para utilizar as bandeiras, aqui está a lista com suas respectivas explicações:
Aqui, o significa função aberta.
Arquivo de cabeçalho/biblioteca
A seguinte biblioteca ou arquivo de cabeçalho é usado no código para esse uso de função.
#incluir
Para criar ou abrir um arquivo nesse determinado diretório ou caminho, use o editor Vim. O “OpenFile.C ”é o nome do arquivo que criamos. Quando digitamos esse comando, o editor abre o arquivo no modo de edição, permitindo -nos digitar as linhas de código no arquivo. Para fechar o editor do VIM e salvar o arquivo, pressione a tecla Escape, digite um cólon (:) e x, depois pressione a tecla Enter.
As seguintes linhas de código são digitadas no “OpenFile.Arquivo C ”. Usamos um caminho relativo para abrir o “testopen.arquivo txt ”no código a seguir. As bandeiras O_RDONLY (somente leitura) e O_Creat foram aprovadas (crie o “testopen.arquivo txt ”se não existir no diretório atual).
A função Printf agora é usada para exibir o valor de retorno no descritor de arquivo. Em seguida, verificamos se o descritor de arquivo é igual a -1, o que indica que o arquivo aberto falhou e imprime o erro.
Utilizamos o compilador GCC para montar o arquivo. Se você não tiver o compilador C GCC instalado, execute os seguintes comandos para obtê-lo. Basta executar a instrução subsequente no terminal para ver a versão do compilador GCC no seu sistema Linux-Ubuntu:
Atualização do sudo apt
sudo apt install build-essencial
Digite o seguinte comando para compilar o “OpenFile.C ”no compilador GCC. O comando a seguir inclui o compilador GCC. Em seguida, especifique o arquivo que queremos compilar junto com a extensão e o sinalizador -o (usado para produzir o arquivo para um arquivo de objeto específico, que é especificado logo após esse sinalizador):
GCC OpenFile.C -O OpenFile.fora
Como alternativa, podemos executar o comando antes da bandeira -o, que produz um “a.OUT ”arquivo de objeto no diretório atual por padrão. Usando o comando de diretório de listas, verifique o arquivo de saída ou objeto, i.e. abrir arquivo.fora.
Digite o seguinte comando para executar ou executar o arquivo de saída ou objeto, que exibe o descritor de arquivo igual a 3. Indica que o arquivo fornecido (testopen.txt) está presente no diretório que contém o arquivo de saída.
Abra o arquivo C com o editor Vim mais uma vez, mas desta vez, modifique o nome do arquivo (OpenFile1.txt) na função aberta. Em seguida, salve e feche o “OpenFile.Arquivo C ”.
Outra mudança no comando aberto é passar a bandeira O_RDONLY, que abre o “OpenFile1.txt ”no modo somente leitura. Isso significa que só podemos ler os dados do arquivo. Não podemos executar a função de gravação ou atualização nesse arquivo especificado.
Compile o arquivo novamente para atualizar o arquivo de saída. Depois disso, execute o código usando o arquivo de objeto. Como não temos o arquivo de texto especificado no diretório atual, o uso da função Open () lançou um erro e retorna um -1 que é armazenado na variável FilDeDescriptor do tipo inteiro. A tela a seguir exibe a saída do arquivo aberto. Se o arquivo de saída não tiver sido especificado, basta digitar “./a.fora ”no terminal para ver a saída do arquivo.
Abrimos o “OpenFile.Arquivo C ”no editor Vim mais uma vez e usou o sinalizador O_EXCL no comando aberto. Isso implica que, se o arquivo especificado não existir no diretório, não o crie; Se isso acontecer, basta abrir. Porque não há “OpenFile1.arquivo txt ”no diretório da lista, o método aberto retorna um erro.
A tela a seguir demonstra que não temos o arquivo fornecido no caminho, e a função aberta retorna -1. Isso indica que nenhum arquivo ou diretório não existe. Se o comando para o arquivo de saída for digitado incorretamente, ele retornará o erro genérico - “nenhum arquivo ou diretório”.
Conclusão
Este artigo é sobre o uso da função aberta 2 C no sistema Kali Linux. Usando esta chamada do sistema, discutimos como ele pode ser usado para abrir e ler o arquivo e seu conteúdo facilmente. Discutimos como ele lança um erro quando o descritor de arquivo não encontra o arquivo necessário.