Fehler in C-Programm

screw

Grünschnabel
Hey Leute
in diesem Code sollen sich zwei Fehler befinden. Ich komm aber leider ned wirklich weiter. Hoffe ihr könnt mir helfen

Code:
#include <stdio.h>

int max(int a, int b)
{
	return( (a>b)?a:b);
}

main()
{
	int x = 3, y = 9, z = 7;
	long max;

	max=max (max(x,y),z);
	printf("Das %s von %d, %d und %d ist %d.",
			"Maximum", x, y, z, max);
}

Danke schon mal im Vorraus
 
Hallo,

warum kompilierst du das Programm nicht einfach und findest die Fehler selbst, denn der Compiler wird dir sicher schneller helfen.

Ansonsten will ich dir trotzdem helfen ;).
Die main-Funktion muss einen Typ haben (wie die max-Funktion auch).
Außerdem solltest du in einer Datei nicht eine Variable so nennen, wie eine Funktion die du nutzen möchtest. Die Variable verdeckt die Funktion, wesshalb der Aufruf scheitern wird.

Grüße,
Jennesta
 
Ich vermute auch mal, dass C dich nicht Variablen und Funktionen mit dem gleichen Namen benutzen lässt (max)
 
Da ist auch eine implizite Typ-Konvertierung enthalten, da die Methode "max" ein Integer zurück gibt, der einem "long" Datum zugewiesen wird. Das ist aber kein Fehler und dürfte eventuell nur zu einem Warning führen.
 
Zurück