Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

Ziwdon

"main()" vs "int main()" ?

Mensagens Recomendadas

Ziwdon    0
Ziwdon

Boas

Comecei este ano a dar C na cadeira de Programação de Microprocessadores.

Já estamos perto do trabalho final e até agora, em todos os meus programas, tenho usado sempre "main()" para definir a função principal.

Contudo, tenho visto alguns tutoriais, e em praticamente todos eles se usa "int main()".

Gostava que alguem me explicasse qual a funcionalidade daquele "int" e qual a diferença porque até agora não tenho notado nenhuma.

Obrigado

Cumps

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
saunde    0
saunde

Tal como em todas as funcões em C ... antes do nome da função vem o tipo de retorno.. certo ?

void f1()
int f2()
double f3()
char f4()

A diferença da primeira entre elas é que a primeira não retorna nada, a segunda retorna um inteiro, a terceira um double, a quarta um char....

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Triton    12
Triton

Pelo menos com o gcc, se não meteres o tipo de retorno na função main(), ele assume int.

O valor que retornas na função main() é devolvido à consola (return code), e é usado por exemplo para scripting (para saber se um programa acabou normalmente ou devido a um erro).

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Ziwdon    0
Ziwdon

Tal como em todas as funcões em C ... antes do nome da função vem o tipo de retorno.. certo ?

void f1()
int f2()
double f3()
char f4()

A diferença da primeira entre elas é que a primeira não retorna nada, a segunda retorna um inteiro, a terceira um double, a quarta um char....

sim isso eu sei...nao estava era a perceber qual a funcionalidade disso na funcao main().

Pelo menos com o gcc, se não meteres o tipo de retorno na função main(), ele assume int.

O valor que retornas na função main() é devolvido à consola (return code), e é usado por exemplo para scripting (para saber se um programa acabou normalmente ou devido a um erro).

ok. agora ja entendi.

obrigado ;)

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Warrior    68
Warrior

É uma boa prática de programação declarar o main como "int" e retornar 0 caso ele termine sem o programa termine sem problemas.

Isto pode ser útil caso tenhas programas que abram o teu programa, e eles precisam de saber se houve problemas com ele ou não.

Em última análise, o próprio sistema operativo precisa de saber isso.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade