| Bonjour,
Je crois qu'un compilateur C++ peut aussi compiler du C...
Par exemple, j'utilise Dev-c++ aussi bien pour du C que du C++
C'est un environnement tout-intégré (édition-compilation)
http://www.bloodshed.net
Sinon, comme compilateur simple, il ya Borland C compiler
http://www.borland.com
thomas d. Répondre à thomas d. | 3 sandy, le 10 jun 2005 à 15:47:29Merci pour ta réponse, j'ai donc installé Dev C++, j'ai commencé par le programme suivant (très simple mais bon..) :
#include <stdio.h>
int a;
void g (int p, int *q)
{ int a ;
a = 2 ; *q = p-1 ; p = f(a+p, q) ; printf("%d %d ", p,*q) ;
}
int f (int a, int *b)
{ int x ;
x = a+*b;
return x ;
}
void main ()
{int z ;
a=6 ; g(a, &z) ; printf("%d %d \n", a, z) ;
g(z, &a) ; printf("%d %d \n", a, z) ;
}
il me surligne en bleu la 4ème ligne du programme (a=2...) et rien ne se passe, peux-tu m'aider ? Répondre à sandy | Pourquoi ta variable 'a' est déclarée deux fois ???
int a;
void g (int p, int *q)
{ int a ;
Soit c'est une variable locale soit c'est une variable globale... mais pas les deux !
Proverbe Thaïlandais:Pingouins dans les champs,
hiver très méchant. Répondre à Kermitt31 |
| J'ai essayé de compiler le programme : il dit
`f' undeclared (first use this function)
c'est bien ca ?
ca veut dire que f n'est pas déclarée mais elle est quand même utilisée.
Ici p = f(a+p, q) : il faut définir f avant
--
thomas d. Répondre à thomas d. | Ah oui ben il y a ca aussi...
Proverbe Thaïlandais:Pingouins dans les champs,
hiver très méchant. Répondre à Kermitt31 |
| 8 sandy, le 10 jun 2005 à 16:18:40Merci pour les réponses.
Je vais essayer de le modifier pour que cela marche (ce n'est pas moi qui est écrit le programme c'est un exo d'entrainement de mon prof, bref c'est pas gagné pour moi le langage C), mais merci pour tout.
a+ Répondre à sandy |
| 9 sandy, le 10 jun 2005 à 16:25:04Merci pour les réponses.
Je vais essayer de le modifier pour que cela marche (ce n'est pas moi qui est écrit le programme c'est un exo d'entrainement de mon prof, bref c'est pas gagné pour moi le langage C), mais merci pour tout.
a+ Répondre à sandy | C'est on prof qui a écrit ca ??? Et c'est censé marcher ??? Bonjour l'angoisse.. change de prof si c'est vraiment ca !
Proverbe Thaïlandais:Pingouins dans les champs,
hiver très méchant. Répondre à Kermitt31 |
| 11 sandy, le 10 jun 2005 à 21:20:46Trop tard le partiel est dans 15 jours et je suis vraiment à la bourre.. mais bon on va essayer de limiter la casse.
a+ Répondre à sandy |
|
|
| Ah je crois que j'ai trouvé :
voila un programme qui marche : je ne sais pas si il fait ce que tu veux...
j'ai remonté la fonction f avant la fonction g car g a besoin de f, donc f doit etre définie avant g.
Ensuite, plus bas, j'ai change void main() pour main()
et voila :
#include <stdio.h>
int a;
int f (int a, int *b)
{
int x ;
x = a+*b;
return x ;
}
void g (int p, int *q)
{
int a ;
a = 2 ;
*q = p-1 ;
p = f(a+p, q) ;
printf("%d %d ", p,*q) ;
}
//void main()
main()
{
int z ;
a=6 ;
g(a, &z) ;
printf("%d %d \n", a, z) ;
g(z, &a) ; printf("%d %d \n", a, z) ;
}
--
thomas d. Répondre à thomas d. | C'est quand même sacrement moche toutes ces variable qui s'appellent a !
Proverbe Thaïlandais:Pingouins dans les champs,
hiver très méchant. Répondre à Kermitt31 |
|
|
|