60

Tu ne peux pas définir un tableau C si la taille des éléments n'est pas la même. Un tableau est un regroupement d'éléments de même taille.
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é

61

Pourquoi ne prend tu pas une table dans ton fichier externe du genre.

x1 y1 (2 octets par chiffre si >255)
x2 y2
x3 y3
...
Niveau1
Niveau2
Niveau3
...

Pour avoir l'offset de début du niveau1 tu saute la table de (n x et n y) * 2 (2 si 2 octets our x et y.
Pour avoir l'offset de début de niveau2 tu fait saut de table + (taile niveau n-1 x * taille niveau n-1 y) out ça en octet bien sûr.
avatar
la Nature nous montre seulement la queue du lion. Mais je suis certain que le lion a qui elle appartient pense qu'il ne peut pas se révéler en une fois en raison de son immense taille.

- Fondateur de Ti-Gen -: http://www.tigen.org

- Membre du Groupe Orage Studio -: http://oragestudio.free.fr/

- Mon site perso -: http://tisofts.free.fr

Projets TI68K en cours:
GFA-Basic = http://www.tigen.org/gfabasic
Arkanoid.
PolySnd 3.0.

62

visiblement tu nas pas compris ...
typedef struct {
 int w,h;
 int spDat[3];
 int mat[w][h];
} niveauL;
niveauL nvo[nb_de_niveaux];

c'est peut-etre plus explicite...

63

geogeo > je navais pas vu ton post je parlais a kevin Kofler , mais pour ton post c'est exactement ce a quoi je pensais

64

Je pense que tu te casse la tête si tu procéde avec un structure en C variable en plus.
C'est quoi spdat?

Kevin>Pour un programme utiliser toujours int c'est mieux ou plus détailler les variables unsigned char, short... c'est mieux?
avatar
la Nature nous montre seulement la queue du lion. Mais je suis certain que le lion a qui elle appartient pense qu'il ne peut pas se révéler en une fois en raison de son immense taille.

- Fondateur de Ti-Gen -: http://www.tigen.org

- Membre du Groupe Orage Studio -: http://oragestudio.free.fr/

- Mon site perso -: http://tisofts.free.fr

Projets TI68K en cours:
GFA-Basic = http://www.tigen.org/gfabasic
Arkanoid.
PolySnd 3.0.

65

int correspond, en régle générale, à un mot machine, soit 2 octets sur TI-68k, soit short
(meme chose, avec unsigned devant)
cela dit, int peut être transformé en long (4 octets) par un simple switch de GCC (quelque chose du style -mforce-long ou dans le genre, Kevin sait ça mieux que moi)
donc, utliser un short permet d'etre plus rpécis.

la seule chose que le standard dit, c'est que
sizeof(char) <= sizeof(short) <= sizeof(int) <= sizeof(long)
(meme chose pr unsigned, il me semble)
sahcnat que sur TI, char => 1 octets
short = int = 2 octets (la premiere egalité est avec les options par défaut de GCC)
long = 4 octets

cela dit, sur un PC récent (CPU 32 bits)
int sera en général équivalent à long, 4 octets

et sur un CPU 64 bits, la logique voudrait (je garanti pas) que ce soit 8 octets
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

66

NiTrO120 :
visiblement tu nas pas compris ...
typedef struct {
 int w,h;
 int spDat[3];
 int mat[w][h];
} niveauL;
niveauL nvo[nb_de_niveaux];
c'est peut-etre plus explicite...

J'ai très bien compris! C'est toi qui n'as pas compris que ce tableau n'est pas un tableau C valide!!!
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é

67

squale92
: short = int = 2 octets (la premiere egalité est avec les options par défaut de GCC)

Je précise que ça dépend du target. C'est 2 octets sous TIGCC, mais 4 sous MinGW GCC par exemple.
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é

68

Pour le switch qui fait que TIGCC comprend "int" comme "long", c'est -mlong. A ma connaissance, ee switch crée des problèmes et n'en résout aucun...
avatar
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-admin de TI-Planet.

69

Ouai mais beaucoup de monde utilse toujours int même pour des variable ne faisan t que 1 octet, je voulais juste savoir si int était plus rapide que de définir unsigned short, char.... En bref c'est mieux de détailler les variable ou de les mettre tous en int. Si c'est le cas ça lme paraît bizarre car comme l'a dit quale92 int c'est en faite short.
avatar
la Nature nous montre seulement la queue du lion. Mais je suis certain que le lion a qui elle appartient pense qu'il ne peut pas se révéler en une fois en raison de son immense taille.

- Fondateur de Ti-Gen -: http://www.tigen.org

- Membre du Groupe Orage Studio -: http://oragestudio.free.fr/

- Mon site perso -: http://tisofts.free.fr

Projets TI68K en cours:
GFA-Basic = http://www.tigen.org/gfabasic
Arkanoid.
PolySnd 3.0.

70

./67> arf, oui, en effet. j'aurai du mettre TIGCC au lieu de GCC tout court.
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall