Dev C ++ для компиляции исходного файла C - PullRequest
3 голосов
/ 04 мая 2009

Как я могу использовать Dev C ++ для компиляции исходного файла C. Я думал, что это автоматически сделает это, но по какой-то причине он компилируется с несколькими ошибками, и я думаю, что это потому, что вы должны внести изменения в него для компиляции файла C.

Пример тестового кода:

 #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);       
}

Ответы [ 3 ]

4 голосов
/ 04 мая 2009

Это пре-ANSI код. Я не уверен, что компилятор gcc поддерживает его, и в любом случае это плохая практика. Измените свою функцию на:

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

и вам нужно будет объявить его как:

double x_plus_one( double x);

Вы также можете попробовать скомпилировать с -традиционным флагом , но я не проверял это.

1 голос
/ 04 мая 2009

Также измените main на int main (). И сделайте модификацию, как указал Нил.

0 голосов
/ 04 ноября 2015

Я думаю, что вы пытались написать это:

#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);       
}

сохранить как main.cpp и для компиляции

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
...