Forum: Mikrocontroller und Digitale Elektronik C-Funktionen mit verschiedenen Parametern


von Stefan S. (sschultewolter)


Lesenswert?

Hallo,

soweit ich das richtig verstanden hab,
können Funktionprototypen identisch sein, wenn sie verschiedene 
Parameter nutzten.

Wie so geht dann folgendes Beispiel nicht.

1
/* Header-File */
2
void init(void);
3
void init(uint8_t a);
1
/* C-File */
2
void func(void)
3
{
4
  const uint8_t a = 1;
5
  func(a);
6
}
7
8
void func(uint8_t a)
9
{
10
  // do
11
}

: Bearbeitet durch User
von Florian K. (florian_k89)


Lesenswert?

Hi du kannst keine Funktionen in C überladen.

von g457 (Gast)


Lesenswert?

> Wie so geht dann folgendes Beispiel nicht.

C++ ja, C nein.

von Stefan S. (sschultewolter)


Lesenswert?

Alles klar. Jetzt erklärt es sich auch woher ich diese 
Funktionsüberladung kannte. Arduino IDE welche ich nicht mehr nutzte 
arbeitet mit C sowie C++.

Frage somit erledigt.

von Easylife (Gast)


Lesenswert?

Stefan S. schrieb:
> Alles klar. Jetzt erklärt es sich auch woher ich diese
> Funktionsüberladung kannte. Arduino IDE welche ich nicht mehr nutzte
> arbeitet mit C sowie C++.
>
> Frage somit erledigt.

C++ ist schon toll.
Dass es selbstständig init() und func() matched... einfach genial.

von g457 (Gast)


Lesenswert?

> C++ ist schon toll.

Ja, denn es kann

>> void init(void);

und

>> void init(uint8_t a);

auseinanderhalten. C kann das nicht. Aber wollen wir mal den alten Fred 
nicht unnötig aufblasen, des TOs Frage wurde bereits vollumfänglich 
diskutiert und beantwortet.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.