Bonjour,
J'ai des tableaux char d'une longueur assez importante :
Je cherche à créer une fonction qui me permettrait de lire le contenu d'un tableau ( en l'appelant dans la fonction par son nom ) puis de copier son contenu dans une mémoire eeprom.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 char test1[200]; char test2[200]; char test3[200];
Les fonctions d'écriture dans l'eeprom existent déja et celles ci fonctionnent bien : ( déja testées )
XE2BeginWrite(EEPROM_CONTROL, address_start);
Permet de préparer l'eeprom à écrire des bits à partir d'une adresse donnée. ( à spécifier par l'utilisateur )
XE2Write;
Ecrit un bit dans l'eeprom
XE2EndWrite();
Termine l'ecriture dans l'eeprom
Je voudrai pouvoir utiliser ma fonction comme ceci :
Eeprom2_store_table(test1, 0x000000);
ou encore :
Eeprom2_store_table(test2, 0x001000);
La fonction Eeprom2_store_table lirait tout le contenu du tableau dont le nom est indiqué, puis et copierait chacun de ses bits dans l'eeprom à partir de l'adresse spécifiée.
J'ai donc créé la fonction suivante, mais mon compilateur m'indique des erreurs que je ne sais pas résoudre :
Error [1505] redeclaration of 'table'
Comment puis faire pour indiquer à la fonction qu'elle doit attendre ici un nom de tableau ?
Warning [2054] suspicious pointer conversion
Cette ligne pose pb : je voudrai lire chaque bit du tableau appelé par la fonction :
Error [1129] [] operator requires a pointer and an integer as operands
Code : Sélectionner tout - Visualiser dans une fenêtre à part for(i = 0; i < strlen(table); ++i)
Je ne sais pas comment spécifier correctement le pointer
Code : Sélectionner tout - Visualiser dans une fenêtre à part E2Write(table[*p++]);
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 static void Eeprom2_store_table(char table, LWORD address_start) { char table; BYTE i, *p; p = (BYTE*)&table; XE2BeginWrite(EEPROM_CONTROL, address_start); for(i = 0; i < strlen(table); ++i) { XE2Write(table[*p++]); } XE2EndWrite(); }
Pourriez vous m'aider en me corrigeant svp ?
Je vous remercie beaucoup,
Partager