Erreur programme C
wiam_
Messages postés
168
Date d'inscription
Statut
Membre
Dernière intervention
-
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
bonjour tt le monde ,
j'essaye de programmer une fonction qui permet de copier un message passé en paramètre dans un tampon passé aussi en paramètre , mais à chaque fois qu'il y a un espace , il faut qui'il soit doubler .
J'ai fait le programme suivant, mais il m'affiche une erreur bizard lors de la compilation de genre :
/usr/lib/gcc/i486-linux-gnu/4.3.3/../../../../lib/crt1.o: In function '_start':
/build/buildd/glibc-2.9/csu/../sysdeps/i386/elf/start.S:115: undefined reference to 'main'
collect2: ld a retourné 1 code d'état d'exécution
Voici ma fonction :
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdlib.h>
#include <string.h>
int copierDoubler(char *msg, int size, char *dest) {
int ret;
char *ptr;
char *buf;
buf = (char *)malloc(size);
ptr = msg;
while (ptr < msg + size) {
if (*ptr == ' ') {
*buf++ = ' ';
*buf++ = ' ';
} else {
*buf++ = *ptr;
}
ptr++;
}
free(buf);
strcpy(dest, buf);
return 0;
error:
return -1;
}
Merci d'avance pour votre aide , c urgent svp
j'essaye de programmer une fonction qui permet de copier un message passé en paramètre dans un tampon passé aussi en paramètre , mais à chaque fois qu'il y a un espace , il faut qui'il soit doubler .
J'ai fait le programme suivant, mais il m'affiche une erreur bizard lors de la compilation de genre :
/usr/lib/gcc/i486-linux-gnu/4.3.3/../../../../lib/crt1.o: In function '_start':
/build/buildd/glibc-2.9/csu/../sysdeps/i386/elf/start.S:115: undefined reference to 'main'
collect2: ld a retourné 1 code d'état d'exécution
Voici ma fonction :
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdlib.h>
#include <string.h>
int copierDoubler(char *msg, int size, char *dest) {
int ret;
char *ptr;
char *buf;
buf = (char *)malloc(size);
ptr = msg;
while (ptr < msg + size) {
if (*ptr == ' ') {
*buf++ = ' ';
*buf++ = ' ';
} else {
*buf++ = *ptr;
}
ptr++;
}
free(buf);
strcpy(dest, buf);
return 0;
error:
return -1;
}
Merci d'avance pour votre aide , c urgent svp
A voir également:
- Erreur programme C
- Programme demarrage windows - Guide
- Message programmé iphone - Guide
- Mettre en veille un programme - Guide
- Cette action ne peut pas être réalisée car le fichier est ouvert dans un autre programme - Guide
- Forcer la fermeture d'un programme - Guide
2 réponses
Ton compilateur te dit : "undefined reference to 'main'"
Soit : référence à la fonction main non définie.
Et en effet il n'y a pas de fonction main() dans ton code.
Il faut donc utiliser la fonction int main(void).
Soit : référence à la fonction main non définie.
Et en effet il n'y a pas de fonction main() dans ton code.
Il faut donc utiliser la fonction int main(void).
wiam_
Messages postés
168
Date d'inscription
Statut
Membre
Dernière intervention
8
merci d'avoir repondu , en fait meme quand je rajoute le main , j'ai toujours le meme erreur , je crois que c'est dû à ma fonction