Hi, ich frage mich gerade ob ich ein #define auch in einer Funktion schreiben kann. Wird dass dann richtig übersetzt, ist ja ein Präprozessorbefehl, der eigentlich nix mit dem Programmablauf zu tun hat. Grund: Ich möchte char in seine Bits unterteilen. Auf die Art des Typedef will ich aber verzichten, da das ja nicht in Ansi C standardisiert ist und bei einem Controllerwechsel problematisch werden könnte. Meine idee:
1 | void main (void) |
2 | {
|
3 | #define main_VAR1_BIT1 0x01
|
4 | #define main_VAR1_BIT2 0x02
|
5 | #define main_VAR1_BIT3 0x04
|
6 | ...
|
7 | unsigned char Var1 = 0; |
8 | |
9 | ...
|
10 | if(Var1 & main_VAR1_BIT2) |
11 | ;//tu was |
12 | }
|
Spricht was dagegen #defines innerhalb von Funktionen zu definieren?? lg niebNoob