return fehler
-
habe folgendes in c geschrieben, wollte einfache ausgabe ausprobieren, zeigt aber fehler:
#include <stdio.h>
#pragma argsused
int i, j, k, l, m, n;
int f(int *j) { m = *j+10; *j = 2; return (m+n); }
int p (int k)
{
int *q, i;
j=j+k;
n+=j;
q = &n;
printf("In p; f() = %d, n=%d\n\rj = %d", f(q), n, j);
}
void
main(void)
{
i=j=k=l=m=n=1;
p(j);
printf("\n\ri: %d, j: %d, n: %d", i, j, n);
getc(stdin);
}Fehler:
'main' must return 'int'kann jemand korrigieren?!
-
sollte eigentlich ein warning sein, kein fehler, hehe, mach aus 'void main ...' einfach 'int main ...'. das reicht schon
-
net schrieb:
sollte eigentlich ein warning sein, kein fehler, hehe, mach aus 'void main ...' einfach 'int main ...'. das reicht schon
Das ist schon gut so, dass es ein Fehler ist ;).
@Vano
Deine Funktion p() hat als Rückgabetyp int, d. h. deine Funktion sollte dann auch was zurückgeben, ansonsten solltest du für den Rückgabetyp void (= nix) wählen.