Domanda

Come posso usare Dev C ++ per compilare il file sorgente C. Ho pensato che l'avrebbe fatto automaticamente, ma per qualche motivo si compila con diversi errori e penso che sia perché è necessario apportare modifiche per compilare un file C.

Esempio di codice di prova:

 #include <stdio.h>



main ()        
{ int i,j;
double x,x_plus_one();
char ch;

i = 0;
x = 0;

printf (" %f", x_plus_one(x));
printf (" %f", x);

j = resultof (i);

printf (" %d",j);
}


double x_plus_one(x)          

double x;

{
  x = x + 1;
  return (x);
}


resultof (j)             

int j;

{
   return (2*j + 3);       
}
È stato utile?

Soluzione

Questo è il codice pre-ANSI. Non sono sicuro che il compilatore gcc lo supporti, e in ogni caso è una cattiva pratica usarlo. Cambia la tua funzione in:

double x_plus_one( double x) {
  x = x + 1;
  return (x);     
}

e dovrai dichiararlo come:

double x_plus_one( double x);

Potresti anche provare a compilare con il flag -tradizionale , ma non l'ho provato.

Altri suggerimenti

Cambia anche main in int main (). E fai la modifica come ha sottolineato Neil.

Penso che stavi cercando di scrivere questo:

#include <stdio.h>

double x_plus_one(double x);
int resultof(int j);


main()        
{ int i,j;
double x;//,x_plus_one;
char ch;

 i = 0;
 x = 0;

printf (" %f", x_plus_one(x));
printf (" %f", x);

j = resultof (i);

printf (" %d",j);
}


double x_plus_one(double x)

//double x;

{
  x = x + 1;
  return (x);
}


int resultof (int j)             

//int j;

{
   return (2*j + 3);       
}

salva come main.cpp e per la compilazione

g++.exe -D__DEBUG__ -c main.cpp -o main.o -I"C:/Program Files/CodeBlocks/MinGW/include" -g3

g++.exe -D__DEBUG__ main.o -o Project1.exe -L"C:/Program Files/CodeBlocks/MinGW/lib" -static-libgcc -mwindows -g3


Compilation results...
--------
- Errors: 0
- Warnings: 0
- Output Filename: F:\My Folder\C++ projects\test01\Project1.exe
- Output Size: 38.990234375 KiB
- Compilation Time: 1.92s
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top