1

Désolé de vous emerder avec mon problème perso, mais j'ai un problème avec la fonction 'fgets' (avec TIGGC). J'ai lu la doc la concernant mais c trop vague. Comme aide, j'aimerai bien que quelqu'un me donne un exemple d'utilisation. En ce qui concerne fopen, fclose et fputs, c bon ca j'ai comprisgrin

MERCI à tout ceux qui pourrai m'éclaircirwink

2

Franchement personne peut m'aider ici!

3

J'aurai une petite idée mais je ne suis pas sur:

char mon_texte[longeur];
(...)
fgets (mon_texte, longeur, ptr_struct_fichier);

C ca ou pas? De plus, comment choisissons nous le départ de lectureconfus

4

La fonction fgets(char *s, short n, FILE *stream) doit être utilisée de cette manière :

char buffer[50]; // Taille arbitraire, suffisamment grande, si besoin à allouer dynamiquement.
buffer = fgets(n,stream);

fgets renvoie la chaîne de caractère du fichier désigné par la structure pointée par stream à partir de la position courante, jusqu'à soit le caractère '/0' (0x00) , soit jusqu'à ce que la taille de la chaîne soit égale à n-1.
Ensuite, elle met à jour l'index (la position de lecture des octets) associé à ce fichier smile

5

il faut aussi préciser que fgets s'arrête s'il rencontre un saut de ligne (mais dans ce cas il laisse le 'n' avant de terminer la chaîne), donc si tu veux lire une chaîne de caractères totalement quelconque (ie qui peut contenir un saut de ligne), il faut pas utiliser fgets mais faire une boucle avec fgetc (qui de toutes façons n'est pas plus lente puisque fgets appelle aussi fgetc)

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

6

zdr a écrit :
La fonction fgets(char *s, short n, FILE *stream) doit être utilisée de cette manière :

char buffer[50]; // Taille arbitraire, suffisamment grande, si besoin à allouer dynamiquement. buffer = fgets(n,stream);

Ce n'est pas tout à fait ça. C'est:
char buffer[50];
fgets(buffer,50,stream);
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

7

Merci pour l'infogrin

Je m'y interesse car en ce moment je suis en train de faire un protage des fonction TIGCC pour CC (compilo on-calc). J'en suis à 20 fonctions totalement opérationnelleswink

Quand y'en a qui disent que les fonctions TIGCC sont non optimisées, c partiellement faux! daccord, il y en a programmées en C. Mais prenez le cas de Spritex, difficile de faire mieux! De plus, le compilo de TIGCC est TRES bien foutu et optimise pas mal le C.

LA PLUPART DES FONCTIONS SONT PROGRAMMEES DIRECTE EN ASM.

Pour ceux que ca interresse, j'ai une version modifiée de Sprite 8,16 et 32 qui gère les COLLISIONS pixel par pixel et qui gère un nouveau mode d'affichage en une dixaine d'octets de plus et pour une rapidité équivalentewink

8

collisions ?? cad ??? il teste si qq chose est déjà affiché à l'endroit où on veut afficher ?
Non-Webmaster et non-programmeur du site. .Pour tout probleme ou question ,débrouillez vous avec les Webmasters .

«- Pas Moo ! ^^

9

C cawink il detecte si ton sprite va sur d'autres pixels. Je l'ai integré à Sprite8, Sprite16 et Sprite32 car ca detecte en même temps que l'affichage du sprite. Donc idéal pour les jeux si on veut gagner du temps (détection et affichage en une seule passe). De plus, g corrigé un problème existant sur la version de TIGCC, on peut désormer faire sortir son sprite vers la GAUCHE de l'écran même entièrementsmile

Je vais d'ailleur pas tarder à le mettre on-line pour le DL si y'en a qui son interessé. Je rappel que ces fonctions sont écritent pour CC (compilo on-calc) mais que l'on peut l'adapter sur PC très facilement (c juste de l'asm). Je rappel aussi que je me suis basé sur les versions de TIGCC v0.94 beta 18.

10

Pim89> si tu veux un exemple concret, j'ai mit un exemple avec les collision on-line à:

http://perso.wanadoo.fr/perso.messia/fichiers/exemple.zip

Il n'y a pas les sources (le fichier texte) car je n'est pas fini les fichiers inclus dans cet exemple. c un fichier executable nosub

Pour info, il est fait ENTIEREMENT fait avec CC