coolkaiserabc
Goto Top

C Programmieren HASHdefine auch in funktionen

Hallo,

Ich versuche gerade programmieren zu lernen in C und hab leider niemanden den ich fragen kann.

Ich schreib meine Übungen und würde gerne eine "Variable" setzen die vom Präprozessor ersetzt wird, aber auch in Funktionen wie printf.

So hätte ich es mir gedacht:
#include <stdio.h>
#define _AUFGABE_ 2.1.2

int main()
{
 system("TITLE Aufgabe: _AUFGAE_") //hier soll _AUFGABE_ mit 2.1.2 ersetzt werden  
 printf("Das ist die Aufgabe _AUFGABE_") //hier soll _AUFGABE_ mit 2.1.2 ersetzt werden  
}

ist das möglich?

Danke für eure Antworten
LG

Content-Key: 609897

Url: https://administrator.de/contentid/609897

Printed on: April 20, 2024 at 04:04 o'clock

Mitglied: 146189
146189 Oct 03, 2020 updated at 12:40:52 (UTC)
Goto Top
Member: rubberman
rubberman Oct 03, 2020 updated at 14:18:01 (UTC)
Goto Top
Stringliterale werden vom Compiler verkettet face-wink

#include <stdio.h>
#include <stdlib.h>
#define _AUFGABE_ "2.1.2" 

int main(void)
{
  system("TITLE Aufgabe: " _AUFGABE_); //hier soll _AUFGABE_ mit 2.1.2 ersetzt werden  
  puts("Das ist die Aufgabe " _AUFGABE_); //hier soll _AUFGABE_ mit 2.1.2 ersetzt werden  
}
Macronamen mit vorangestelltem Unterstrich sind aber eigentlich per C Standard reserviert und das TITLE Kommando ist selbstverständlich Windows-spezifisch und nicht auf andere Betriebssysteme übertragbar ...

Steffen