J'ai un fichier dans un format connu et je veux le convertir en un nouveau format, par exemple .:C: struct copie/éléments du tableau
struct foo {
char bar[256];
};
struct old_format {
char name[128];
struct foo data[16];
};
struct new_format {
int nr;
char name[128];
struct foo data[16];
};
static struct old_format old[10];
static struct new_format new[10];
Problème: après avoir rempli les « anciens » avec les données que je Je ne sais pas comment copier son contenu à "nouveau". Si je
new[0].name = old[0].name;
new[0].data = old[0].data;
Je reçois une erreur de compilation sur l'affectation char * à char [128] (struct foo * sur struct foo [16], respectivement).
J'ai essayé une solution que j'ai trouvé via Google pour la partie chaîne:
strcpy (new[0].name, old[0].name);
new[0].data = old[0].data;
, mais je ne sais pas comment gérer la struct. Il semble que je manque de connaissances de base sur la façon de gérer les tableaux, mais je ne veux pas apprendre C - J'ai juste besoin de terminer cette tâche.
quelqu'un devoirs? –
Pourquoi devrais-je prendre des classes C sans vouloir apprendre C? –
'bar' et' name' ne sont pas (nécessairement) des chaînes terminées par zéro - ce sont des tableaux char à longueur fixe. Sans plus d'informations sur ce que ces tableaux contiennent réellement, vous ne devriez pas utiliser strcpy du tout. –