begin process at 2012 05 29 07:58:36
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Macro et tableau


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Macro et tableau

jeudi 16 juin 2005 à 14:56:48 | Macro et tableau

vecchio56

Administrateur CodeS-SourceS
Bonjour, le code suivant me pose problème:

#define INIT(name, val) int name[] = val
int main()
{
  INIT(a, {2, 3});
}

warning C4002: trop de paramètres réels pour la macro 'INIT'
error C2143: erreur de syntaxe : absence de '}' avant ';'

C'est donc {2, 3} qui doit compter pour plusieurs, pourtant c'est une entité... Quelqu'un voit comment faire?
jeudi 16 juin 2005 à 15:29:25 | Re : Macro et tableau

cosmobob

salut,
t'habites dans le morbihan ?

jeudi 16 juin 2005 à 15:33:12 | Re : Macro et tableau

vecchio56

Administrateur CodeS-SourceS
Si je te réponds tu me réponds?
jeudi 16 juin 2005 à 15:46:38 | Re : Macro et tableau

cosmobob

Réponse acceptée !
oui?
la virgule est un separateur, t'auras du mal a passer un argument qui comporte une virgule ...
#define INIT(name, val) int name[] = val
int main()
{
  #define arg {2,3}
  INIT(a, arg);
}

ok c'est plus chiant a utiliser (voire ca devient inutile)  mais au- ya pas de pb de syntaxe

jeudi 16 juin 2005 à 15:56:40 | Re : Macro et tableau

vecchio56

Administrateur CodeS-SourceS
Réponse acceptée !
En effet ca devient inutile
Une autre belle solution:

#define INIT(name, val) int name[] = val

int main()
{
#define VIRGULE ,
  INIT(a, {2 VIRGULE 3});
}

jeudi 16 juin 2005 à 16:13:28 | Re : Macro et tableau

cosmobob

une solution qui roxe:

#define INIT(name, val) int name[] = val
#define v ,
#define e {
#define s }

int main()
{

  INIT(a, e 2 v 3 v 4 v 5 v 6 s );
}



jeudi 16 juin 2005 à 18:52:37 | Re : Macro et tableau

steve_clamage

Vous allez flinguer vos sources !
Elle est vraiment utile cette macro "INIT" ?

jeudi 16 juin 2005 à 18:57:19 | Re : Macro et tableau

vecchio56

Administrateur CodeS-SourceS
Elle est un peu plus compliqué, j'ai mis celle la pour mettre en évidence le problème


Cette discussion est classée dans : macro, tableau, name, val, init


Répondre à ce message

Sujets en rapport avec ce message

pb debutant sur les char [ par skyman272 ] j'ai un tableau de caractere name[10]comment faire pour copier une chaine entiere dans ce tableau.Exemple : name = "toto", qui ne marche pas.merci tableau de chaines [ par ashboody ] const char * Ini_GetPrivateProfileString (...);mytype myfunc (char **RegisteredChannels_Name);{strcpy( RegisteredChannels_Name[ChannelIndex], Thread en C sous Unix [ par olilie ] Salut a tous,J'aurais besoin d'aide sur le multithreading en C.Mon programme doit mettre a jour un tableau a deux dimensions contenant une structures tableaux de chaines en argument de fonction [ par ashboody ] je dispose d'une fonction connect a laquelle je doit passer un tableau de chaine char **RegisteredChannels_Name. Pour cela je déclare mon tableau dans cast d'un float en double [ par ashboody ] j'aimerais me passer de la variable d_val est-ce possible en faisant un cast de f_val ?/* proto de la fonction Calcul */int Calcul (double *Value);/* probleme entre chaine et tableau [ par Elkaire ] salut a tous, je debute en C et je me retrouve confrontéau probleme suivant : dans une mon application cllient serveur mon client envoie des trames so DevCpp 4.9.9.0 et mysql ???????????????? [ par foxugly ] Salut,j'essaye de chipoter avec une db mysql à partir de devcpp et ça ne marche pas......j'ai installé devcpp, le pack mysql et easyphp 1.7, dans eas Pointeurs [ par ph0ton ] salut,j'ai beaucoup de mal a ecrire des pointeurs correctement, et j'aurai besoin de l'avis d'un connaisseur pour savoir si ce que j'ai ecrit est corr RichEdit [ par bou1024 ] Salut !Je suis en train de développer un logiciel avec C++ Builder 6 et j'ai un petit problème !J'aimerai faire un rapport automatique pour imprimer, Insertion \r\n [ par pidoumtimo ] Bonjour a tous.Je voulais savoir si vous pouviez me dire comment inserer un \r\n a la fin d'une ligne de mon tableau sans ecraser ce qu'il y a deja da


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,437 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales