0Pricing
Zig Academy · Aula

Chamando funções C e vinculando bibliotecas

Vincule-se à libc e a bibliotecas externas.

Chamando funções C e vinculando bibliotecas é uma aula grátis de Zig Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Zig Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Zig Academy inclui 4 aulas no total.

Importar não é vincular

@cImport fornece as declarações, mas o código de máquina real ainda está em uma biblioteca C à qual você precisa vincular o programa.

Vincule à libc

A maioria das chamadas C precisa da biblioteca padrão de C. Configure a compilação para vincular à libc, para que funções como printf sejam resolvidas no momento da vinculação.

exe.linkLibC();

Vinculação pela CLI

Para uma execução rápida, passe a opção você mesmo. -lc vincula à libc quando você compila diretamente um único arquivo.

zig build-exe main.zig -lc

Chame como código nativo

Depois de vincular, uma função C é chamada como uma função de Zig. Você escreve c.printf(...), e Zig cuida da convenção de chamada.

c.printf("%d\n", 42);

Correspondência da assinatura

Você deve passar argumentos compatíveis com a assinatura C. Tipos incorretos geram um erro de compilação, pois Zig conhece o protótipo traduzido.

Vincule uma biblioteca nomeada

Para outras bibliotecas, informe o nome delas. linkSystemLibrary diz ao vinculador para incluir algo como a biblioteca matemática.

exe.linkSystemLibrary("m");

Os valores de retorno voltam

O valor de retorno de uma função C chega como um valor normal de Zig do tipo traduzido, pronto para ser armazenado ou testado.

const n = c.abs(-5);

Erros usam convenções de C

C não tem uniões de erro, portanto as falhas aparecem como códigos de retorno ou como um errno definido. Você os verifica à maneira de C, manualmente.

Nenhuma conversão oculta

Zig não faz nenhuma conversão silenciosa dos seus dados. O que você passa é o que C recebe, mantendo a chamada barata e previsível.

Configuração no arquivo de compilação

Em build.zig, você associa a vinculação ao artefato. A mesma etapa exe que compila seu código também registra as bibliotecas.

exe.linkLibC();
exe.linkSystemLibrary("z");

Dois passos para o sucesso

Chamar C é sempre importar e vincular: trazer as declarações e depois garantir que os símbolos reais estejam disponíveis para o vinculador.

Verificação rápida

Pense no que faz uma função C ser realmente resolvida.

Recapitulação

Você aprendeu que chamar C exige tanto a importação quanto a vinculação; depois disso, as funções C são chamadas como funções nativas de Zig. 🎯

Perguntas Frequentes

A aula “Chamando funções C e vinculando bibliotecas” é grátis?

Sim — o texto completo de “Chamando funções C e vinculando bibliotecas” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Zig Academy, atualize para CoddyKit PRO. O curso de Zig Academy inclui 4 aulas no total.

O que vou aprender em “Chamando funções C e vinculando bibliotecas”?

Vincule-se à libc e a bibliotecas externas. Você pratica Zig Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Zig Academy?

Nenhuma experiência prévia é necessária. Zig Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.

Quanto tempo leva a aula “Chamando funções C e vinculando bibliotecas”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Zig Academy?

Sim. Cada aula de Zig Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Importando cabeçalhos C com @cImport
  2. Chamando funções C e vinculando bibliotecas
  3. Ponteiros, strings e tipos C
  4. zig translate-c para ler C como Zig
← Voltar para Zig Academy