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

Guest tsenart

[Resolvido] [C] Dúvida: Diferença entre 'int main() e main()' (Resolvido)

Mensagens Recomendadas

Guest tsenart   
Guest tsenart

Boa tarde pessoal...

Estou a dar os primeiros passos(estou a entrar na parte das funções e procedimentos :cheesygrin:) nesta linguagem com o livro Linguagem C de Luis Damas publicado pela FCA.

Uma duvida que eu tenho é que em todos os programas que ele escreve no livro a função principal main() não é precedida de int nem acaba com o return como já tenho visto tantas vezes....

Será que alguem poderia esclarecer-me sobre isto? :)

Thankz

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Hipnoted    6
Hipnoted

int main() retorna qualquer número...

void main() ou main() não retorna nada, não necessitas de pôr return...

Não faz muita diferença no caso do main...

Existem códigos loucos que usam o retorno do "main" para alguma coisa, mas em geral isso não serve de nada...

Eu por exemplo nunca uso o int atrás do main()

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Dabubble    0
Dabubble

O que e retornado pelo int main() tem a haver com o facto da aplicacao ter executado correctamente ou ter retornado erro. 0 (zero) normalmente quer dizer que retornou bem outro numero que retornou erro.

Isto é utilizado para o caso em que tens um programa que chama outro(s) programa(s) e queres saber o resultado da execução.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Guest tsenart   
Guest tsenart

Obrigado pelas explicações. Já estou esclarecido.

Só um off-topiczinho...

A maneira mais simples de manter uma janela de cmd aberta quando o programa é executado directamente do IDE é escrever scanf() antes do fim do programa?  :hmm:

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Hipnoted    6
Hipnoted

Obrigado pelas explicações. Já estou esclarecido.

Só um off-topiczinho...

A maneira mais simples de manter uma janela de cmd aberta quando o programa é executado directamente do IDE é escrever scanf() antes do fim do programa?  :hmm:

Podes usar um:

system("pause");

Ou então qualquer coisa como:

printf("prima tecla para continuar...");
getchar();

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Rui Carlos    309
Rui Carlos

int main() retorna qualquer número...

void main() ou main() não retorna nada, não necessitas de pôr return...

Não faz muita diferença no caso do main...

Existem códigos loucos que usam o retorno do "main" para alguma coisa, mas em geral isso não serve de nada...

Eu por exemplo nunca uso o int atrás do main()

se não me engano 'main()' é exactamente igual a 'int main()'.

ou seja, por ou não por o 'int' atrás do 'main()' é o mesmo, se tu não o pões, o compilador vai colocá-lo.

pelo menos o gcc acho que funciona assim, quando não é indicado o tipo de retorno de uma função (seja ela a 'main' ou outra qualquer) o gcc assume que o tipo é 'int'.

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 a nossa Política de Privacidade