English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
Todas as categorias

#include
int square (int x) /* Calcula o quadrado de x */
{
printf ("O quadrado e %d",(x*x));
return(0);
}
int main ()
{
int num;
printf ("Entre com um numero: ");
scanf ("%d",&num);
printf ("\n\n");
square (num);
return(0);
}

-----------------
Informações do compilador é:

multiple definition of `main'
first defined here
ld returned 1 exit status
C:\Documents and Settings\Administrador\Meus documentos\My eBooks\Aprendendo\Aprendendo Programação\Linguagem C\Makefile.win [Build Error] [projetoteste1.exe] Error 1
----------
O log do compilador é:

C:\Documents and Settings\Administrador\Meus documentos\My eBooks\Aprendendo\Aprendendo Programação\Linguagem C\Makefile.win [Build Error] [projetoteste1.exe] Error 1

2006-09-24 20:18:01 · 3 respostas · perguntado por Lello 2 em Computadores e Internet Programação e Design

3 respostas

A funcao main por definicao de ANSI C e main(int argc, char* argv[]).
Alguns compiladores aceitam outras definicoes mas quando se fala de ANSI C o simbolo main ja esta definido tal como expliquei no paragrafo acima. Por isso, quando nao declarado da mesma forma o compilador pode pensar que se trata de uma nova definicao do simbolo main. Em que, argc e o numero de argumentos passados pela linha de comando quando o programa e chamado. E argv e um array de char* em que cada elemento representa uma das opcoes da linha de comando. Em que argv[0] e o nome do programa em si.

2006-09-25 06:58:56 · answer #1 · answered by jocaalmagubers 3 · 0 0

//substitua essa linha:
int square (int x) /* Calcula o quadrado de x */
//por:
void square (int x) /* Calcula o quadrado de x */
//e deleta essa:
return(0);

Deve funcionar

2006-09-27 02:06:30 · answer #2 · answered by Konig 3 · 0 0

Compilei o seu programa no GCC (linux) e rodou normal.
Modifiquei seu programa pra ver se funciona no DEVC++. O código segue abaixo:

#include

int square (int x) /* Calcula o quadrado de x */
{
return (x*x);
}

int main ()
{
int num;
printf ("Entre com um numero: ");
scanf ("%d",&num);
printf ("\nO quadrado e %d.\n", square (num));
return(0);
}

O "return(0)" vc só usa na função "main"... demais funções devem returnar algum valor, como coloquei acima "return(x*x)"!

2006-09-25 07:08:25 · answer #3 · answered by Master_plus_plus! 2 · 0 0

fedest.com, questions and answers