Idag är jag seg i skallen. Jag har en struktur som används vid serieportskommunikation, inget konstigt med det. Nu håller jag på att skriva stommen till ett projekt med fler serieportar och då deras rutiner är snudd på identiska vore det trevligt om jag kunde göra en typedef som gör detta för mig.
En typedef är ju hur enkel som helst MEN jag skulle gärna vilja ha möjlighet att ge olika bufferstorlekar för de olika enheter och nu börjar det bli ett problem för mig. Som exempel:
Kod: Markera allt
#define TX_SIZE 100
#define RX_SIZE 50
typedef struct
{
char Buffer_Tx[TX_SIZE];
char Buffer_Rx[RX_SIZE];
} T_SERIAL_PORT;
T_SERIAL_PORT Ser_1;
T_SERIAL_PORT Ser_2;
Jag skulle dock vilja ha det så att jag kunde skriva något i stil med:
T_SERIAL_PORT [TX_SIZE] [RX_SIZE] Ser_1;
T_SERIAL_PORT [TX_SIZE] [RX_SIZE] Ser_2;
för att på det vis kunde anpassa dom till behovet och enkelt ändra dom. I vilken följd parameterna skrivs är utan betydelse, parenteser och liknande likaså, det viktiga är att det fungerar.
Och det har inte bara med denna funktion att göra, ibland behöver jag att kunde ha en "stomme" i form av t.ex. en typedef som jag sedan kan använda med lämplig parameter till för att få rätt storlek/värde/whatever. Men just nu går jag sur i det hela så om någon har lekt med detta kan du/ni väl sparka mig i rätt riktning.