Table de chaîne

HommeCocoa

Membre actif
3 Janvier 2003
173
0
Vevey - Suisse
Bonjour,

J'aurais aimé savoir comment déclarer une table de chaîne en C.

En gros un truc du sytle

char table[] = {'c', 'a', 'b'}

mais avec des chaînes à la place des caractères.

Merci d'avance
David
 
HommeCocoa a dit:
Bonjour,

J'aurais aimé savoir comment déclarer une table de chaîne en C.

En gros un truc du sytle

char table[] = {'c', 'a', 'b'}

mais avec des chaînes à la place des caractères.

Merci d'avance
David

unsigned char * table[]={"Un","Deux","Trois"};

(unsigned à cause des caractères accentués qui sont >127)

Cordialement
 
A la place de déclarer un tableau de char, tu déclares un tableau de char *
Par exemple :
Bloc de code:
char* table[] = {"titi", "toto", "tata"};
 
oké merci!

j'ai donc déclaré ma table de chaine et je désirerai l'afficher. Sachant que je suis dans un projet Cocoa
j'ai écrit ça:

unsigned char * table[]={"Un","Deux","Trois"};

[eOutput setStringValue:*table[0]];

mais ça plante à l'execution, il y a une erreur mais je comprend pas vraiment pourquoi.

Merci encore
 
Hou la la !! la grosse erreur sur les pointeurs :D

*table[0] donne le premier caractère de la chaine !

donc vire le * et ça ira mieux ;)

et puis tu utilises des chaines C alors que la méthode attend un NSString, ça peut pas marcher ;)
[edit]
essaye:
NSString * table[]={@"Un",@"Deux",@"Trois"};

Autre solution: programme en java, y a pas de pointeurs et pas de chaine en C (cohérent non?):rateau:
 
Hum, tu as du mal avec ces pointeurs :)

Tu peux utiliser NSArray comme ceci:
Bloc de code:
NSArray *myArray;        
myArray = [NSArray arrayWithObjects:@"un",@"deux,@"trois", nil];

Ne pas oublier le dernier élément à nil !!

et attention le tableau est en autorelease !

par contre avec
Bloc de code:
- (id)initWithObjects:(id)firstObj, ...
ce n'est pas le cas ...
 
  • J’aime
Réactions: molgow
HommeCocoa a dit:
merci beaucoup!

Je vais commencer par relire la théorie des pointeurs en C car ceci n'est pas très clair pour moi...
En faite je les métrise mieux en assembleur avec le # et le @

C'est une excellente chose, on devrait toujours commencer par l'assembleur.
Je pense que tu n'aura aucun mal a assimiler les syntaxes C et Obj-C.
Si tu a des questions, n'hésite pas...

Cordialement