Wskaźnik jako argument funkcji

0

Nie bardzo rozumiem działanie wskaźników... Mam dwie funkcje

void write_eeprom (unsigned char addr, unsigned char offset, unsigned char *str)

// i

unsigned char read_eeprom (unsigned char addr, unsigned char *str)
 

W jaki sposób wywołać pierwszą funkcję?

 
 write_eeprom (1,1,2);

a drugą:

 
char test = read_eeprom (1, 1);
0

Od biedy to pewnie się skompiluje z warningami, ale jeśli w kodzie coś oczekuje na wskaźnik to przypuszczam że zakłada że dostanie faktycznie adres poprawnego bloku pamięci a nie adres z dupy ;] Więc powinieneś zrobić jakiś malloc(), zaalokować obszar pamięci i dopiero go tam przekazać. Albo zrobić tablicę na stosie i przekazać adres do niej.

0
unsigned char tset=2;
write_eeprom(1,1,&tset);
unsigned char test=read_eeprom(1,&tset);

1 użytkowników online, w tym zalogowanych: 0, gości: 1