В 'C' вам не нужны предварительные декларации. Это позволяет передавать параметры, которые интерпретируются неправильно. (Не то чтобы это отличная функция, но вы не можете сделать это в C ++)
в файле A:
float sum(float a, float b)
{
return a+b;
}
в файле B
main()
{
printf("%f\n", sum(1,2));
}
с C, компилируется, но печатается 0,000
с C ++ вам нужно float sum(float,float);
перед printf, и это даст ожидаемый результат.