30

Hum:
illwieckz :
Erf ton code de trois ligne là....

essaie de le compiler tout seul....


Excusez moi mais j'ai vraiment ce code à la va vite sans reflechir; je voulais exprimer plutot ce bout de code :
char *buf = malloc(10 * sizeof(char));
short x = 48
buf[0] = x;




Lionel Debroux :
Horreur. Je sais bien que certains profs le font, mais franchement, compiler sans optimisation et compiler sans warnings (surtout du C !)...


Heuh hum. Reparons vite cette betise alors: a part l' option -Wall que vaut-il mieux ajouter comme option à la compilation ?




Link :
Nanar_duf comme l'a dit Ykizar, il n'y a pas 48 = 0 mais 48 = '0': le caractère "zéro" (et aussi 0 = '\0' : le caractère nul, qui termine une chaîne)
Edit: au fait, dans ta boucle, il y a deux fois i++ : c'est normal que le buffer soit rempli un caratère sur 2 triso

PS: C'est quoi, le caractère -35 ? confus (ou plutot 65501, je suppose...)


Merci pour l' histoire de traduction entre ASCII et short, je pense avoir compris.
Hum, ne disons rien pour les 2 fois i++; dehors

Et en fait le -35 = 13 (code de la touche enter) - 48. roll




Hum et sinon, à la fin, l' algorithme:
	short size =   1 * sizeof(char);
	short k = 0;
	char *buf = malloc(size);
	memset(buf, ' ', size);

	short i = 0;
	while(k != 13 && k != 264)
	{
		k = ngetchx();
		if(k != 13 && k != 264)
		{
			buf[i] = k;
			printf("%c", k);
			size = size + sizeof(char);
			buf = realloc(buf, size);
			i++;
		}
	}
	
	buf[size] = '\0';







Merci beaucoup !

31

> > Horreur. Je sais bien que certains profs le font, mais franchement, compiler sans optimisation et compiler sans warnings (surtout du C !)...
> Heuh hum. Reparons vite cette betise alors: a part l' option -Wall que vaut-il mieux ajouter comme option à la compilation ?
Voir #14 et la plupart des programmes de TICT, et j'avais oublié -fmerge-all-constants. Parfois, -freg-relative-an (n = 4 ou 5) - à ne pas combiner avec -mpcrel - peut également donner de bons résultats.
avatar
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-admin de TI-Planet.

32

A noter que sans option d'optimisation (-O, -O2 ou -O3), l'option -Wall n'affiche pas tous les warnings (car le graphe d'exploiration n'est pas construit).

33

et tous les warnings de -O2 apparaissent en -O, ou seulement certains ?

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

34

Normalement oui.