1

C'est le grand pas et je voudrais apprendre le C voir C++ sur PC mais en commencant des projets assez simple dans l'environnement MS-DOS. Or je ne trouve pas sur Internet des tutos présentant les focntions de base de MS-DOS ou encore la possibilité de récupérer proprement des paramètres voir réaliser sont propre format de fichiers et écrire dedans. sad
J'avoue être un peu perdu, que je conseillez-vous?

Merci d'avance de votre aide. smile
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.

2

google ^^

3

roll

Voous avez pas des sites favorie de sources et d'exemples??? C'est ça que je recherche et je trouve pas grand chose sur google juste des cours de C++ général.
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.

4

www.google.co.jp
avatar
納 豆パワー!
I becamed a natto!!!1!one!

5

MS-DOS?! On fait du Win32 (le Win32 console existe aussi, d'ailleurs) ou du POSIX de nos jours...
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é

6

-

7

Pas nécessairement...
Il y a une différence entre programmer pour DOS (DJGPP, ou alors carrément un compilateur 16 bits) et programmer pour Win32 console (MinGW etc.).
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é

8

Oue. Les appli win32 console ferme automatiquement la fenetre affichee sans te laisser le temps de lire ce qu'il y avait dedans...

9

Quelle différence ? Les Win32 Console sont en mode protégé ?
Je suis tel la fleur du lotus.
Bien que naissant de la boue,
aucune boue n'y adhère.

10

PpHd
: Oue. Les appli win32 console ferme automatiquement la fenetre affichee sans te laisser le temps de lire ce qu'il y avait dedans...

Les applis DOS aussi si tu n'as pas mis une propriété de la fenêtre bien particulière.
Et les bons gestionnaires de fichiers pour Windows (c'est-à-dire pas Explorer grin) te permettent de lancer n'importe quelle application console (même Win32) dans une fenêtre avec cette propriété avec une simple combinaison de touche.
Et même si tu n'as que Explorer, tu peux t'arranger pour créer un fichier PIF pour une application console Win32 pour mettre cette propriété. Le plus simple est d'en créer un pour une application DOS et de changer l'exécutable à lancer pour mettre l'application console Win32 à la place.
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é

11

BSS
: Quelle différence ? Les Win32 Console sont en mode protégé ?

Oui, mais les applications DOS 32-bits (DJGPP par exemple) aussi.
La différence principale est que les applications Win32 ont accès à l'API Windows.
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é

12

lol oui réaliser des programmes plus précisément en Win32 Console.
En fait j'ai cherché longtemps et je ne trouve rien d'interessant, en fait dans mon cas des exemples de sources m'aide mais aucune simple et diffusé montrant l'utilisation des fonctions comme ouverture et écriture dans un fichier. sad

En gros je sais les utiliser mais avec des doutes sans savoir réellement ce que je fais est 'propre' et 'puissant'!
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.

13

A propos des apps DOS 32 bits, y'a eu un DOS 32 bits c'est bien ça ? happy
Je suis tel la fleur du lotus.
Bien que naissant de la boue,
aucune boue n'y adhère.

14

geogeo> Ben c'est comme avec TIGCC... fopen, fread, fwrite, etc... donc à la limite, tu pourrais même t'en sortir avec ça. Et puis (je devrais pas dire ça... grin) tu peux utiliser la doc de MSDN sur les fonctions C standard si tu as des doutes smile
avatar
Le scénario de notre univers a été rédigée par un bataillon de singes savants. Tout s'explique enfin.
T'as un problème ? Tu veux un bonbon ?
[CrystalMPQ] C# MPQ Library/Tools - [CrystalBoy] C# GB Emulator - [Monoxide] C# OSX library - M68k Opcodes

15

A partir d'une fênetre en mode console tu peux lancer une boîte de dialogue de l'API Windows?

geogeo> Programme en utilisant la librairie standart du C ou du C++ en mode console et ça marche très bien. En plus ton code peut être porté sans problème pour *nix.
Donc pour récupérer les arguments, utilise
int main(int argc, char *argv[])
Dans argc, il y a le nombre d'arguments (en comptant le nom du fichier)
Dans argv[0], il y aura le nom du fichier (en mode console Win32, il y aura toute l'arborescence), et dans argv[in] in variant de 1 à argc-1 tu auras tes arguments sous forme de chaînes de caractères.
Sinon pour ouvrir un fichier, comme je t'ai dit moi je te conseille pas d'utiliser l'API Windows donc utilise fopen, fclose, etc. C'est simple et portable.
avatar
;)

16

ok merci de votre aide, j'ai commencé la gestion des arguments et j'arrive à m'en sortir. wink
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.

17

doc MSDN ou un bouquin, ma foi, pour PC
pour les fichiers;.. fstream powa ! (C++)

le seul inconvénient de MSDN, c'est qu'il n'y a pas QUE le C++... y'a aussi VB, JAVA, et plein d'autre trucs (enfin, selon laversion que tu as, je suppose)
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

18

Ouai ok pas de pbs wink

MLais bon au début je serais obligé de coder beaucoups avec des fonctions en C en apprenant petit à petit le C++. smile Du genre j'utilise clrscr mais je pense pas que ça soit correct en C++...
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.

19

juste en passant, clrscr, c'est pas ANSI, si ?
(je viens de la chercher dans MSDN, il me la donne pas sad (mais c une version assez vieille de MSDN, aussi))

fait attention à ne pas coder en C++ de la même façon que tu code en C... sinon, ça sert à rien de se mettre au C++...
(je ne dis pas ça pour TOI, mais pour toute personne qui se met au C++ après avoir appris le C (ce que j'ai fait, par exemple... des fois, débutter par le C++, je pense que ça serait une meilleure idée... parce que le gars qui a le C en tête, il pensera pas toujours à la façon C++ sad))
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

20

ouep, c assez déroutant d'ailleurs quand on a ses habitudes de C
mais en C++ tu t'amuseras quand mm bcp wink c affolant toutes les erreurs qu'on peut faire !

21

moi je progr en C comme en asm et en C++ comme en C triso

22

Ouai je comprend. Mais je vais me mettre au C++ petit à petit. wink
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.

23

BSS :
A propos des apps DOS 32 bits, y'a eu un DOS 32 bits c'est bien ça ? happy

Pas vraiment. Il y a eu le DOS Protected Mode Interface (DPMI) pour permettre aux programmes de passer en mode 32 bits eux-mêmes.
squale92
: juste en passant, clrscr, c'est pas ANSI, si ?

Il y a clrscr dans conio.h (compilateurs DOS). Et il y a des implémentations de conio.h pour MinGW et Linux.
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é

24

Il y a clrscr dans conio.h (compilateurs DOS). Et il y a des implémentations de conio.h pour MinGW et Linux

Ok. donc, pas ANSI.
(en fait, quand j'étais en première année d'IUT, j'avais cherché une fonction de ce type qui soit ANSI, et pas trouvé sad (mon prof ne voulait QUE de l'ANSI... enfin bon))
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

25

ANSI désolé mon ignorance mais c'est une norme de programmation avec des régles précise et des focntions respectant cette norme? Ce n'est pas le cas de clrscr et de fopen voir printf??? Mais le programme final ne risque rien niveau portabilité ou encore focntionnement si on utilise des fonctions en C?
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.

26

Bah quand il dit ANSI je pense qu'il veut parler des fonctions fournies avec un compilateur aux normes. Les fonctions de la librairie standard C. En utilisant conio.h tu pourras compiler sous linux (et windows évidemment) avec certains compilateurs comme l'a dit Kevin, mais c'est pas sûr que si tu trouves un compilateur C sous n'importe quel *nix tu puisses le compiler.
C'est pareil tu peux utiliser unistd.h avec DevC++ sous Windows alors que c'est une librairie de fonctions d'Unix. (je viens de regarder c'est plutôt POSIX non? enfin je sais pas vraiment).

Mais si tu veux qu'il soit le plus 'portable' possible, utilise uniquement la librairie standard du C, et si c'est le cas, tu seras capable de le compiler sur n'importe quel compilateur C qui respecte la norme (ce qui est le cas d'aucun tongue).

http://www.infosys.utas.edu.au/info/documentation/C/CStdLib.html
avatar
;)

27

Merci beaucoups pour toutes ses infos.
Quel est le meilleur tuto sur internet je parle d'un tut explicant toutes les fonctions en détails des librairies en C car j'ai un petit problème, je ne trouve pas de focntions capabled e me renvoyer la taille d'un fichier en octets. De plus je pense obtenir cette taille en bidouillant la structure FILE mais impossible de savoir ce qu'il y a dedans. sad

[EDIT] Enfin trouvé c'est la fonction ftell!
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.

28

Moi j'ai fait ça mais je sais pas si c'est bien ou pas. :/
int fsize(FILE *fp)
{
  int len;

  rewind(fp);
  fseek(fp, 0, SEEK_END);
  len = ftell(fp);
  rewind(fp);
  return len;
}
avatar
;)

29

ANSI désolé mon ignorance mais c'est une norme de programmation avec des régles précise et des focntions respectant cette norme?

disons que la norme ANSI est une définition du langage C,
et le C comporte une "bibliothèque standard", qui contient les fonctions de bases, définies par l'ANSI (autrement dit, la norme dit quelles sont ces fonctions de base). Normalement, tout compilateur C se disant ANSI (c'est à dire quasiment tous !) doivent implémenter ces fonctions
Tous les compilateurs C étant ANSI (sauf quelques petits compilateurs sans grande importance), si tu n'utilise que des fonctions ANSI, ton source sera portable d'un compilateur vers un autre (enfin, en théorie)
Ce n'est pas le cas de clrscr et de fopen voir printf???

fopen, printf, sont ANSI. => si tu trouves un compilateur C qui n'a pas ces fonctions, c'est que tu n'as vraiment pas de chance grin, et tu ferai bien de passer à un autre compilateur... (à moins d'être sur une plate-forme particulière, pour laquelle les entrées/sorties par flux/fichiers ne sont pas utiles)
clrscr... je dirait que ce n'est pas ANSI => pas présent sous tous les compilateurs C
Mais le programme final ne risque rien niveau portabilité ou encore focntionnement si on utilise des fonctions en C?

si tu utilise des fonctions non ANSI, ça peut marche sur le compilateur que tu utilise....
Mais ça peut ne pas marcher sur un autre compilateur.
Par exemple, les extensions GNU ou C99 (le C ANSI étant le C89, il me semble) de GCC ne marchent pas (sauf pour certaines) sous d'autres compilateurs, qui ne sont pas conformes à ces normes ; cela est d'ailleurs un problème qd tu as appris à programmer sous GCC et que tu te retrouves subitement sous un autre compilo grin
Mais si tu veux qu'il soit le plus 'portable' possible, utilise uniquement la librairie standard du C, et si c'est le cas, tu seras capable de le compiler sur n'importe quel compilateur C qui respecte la norme

voila smile
Mon prof de C/C++ à l'IUT ne voulait que de l'ANSI dans nos programmes, afin qu'ils soient portables... en théorie, tous mes TP sont censés être compilable sous MSVC, par exemple, mais aussi sous GCC, et même sur TIGCC !
(enfin... sauf qu'on codait souvent en C++... mais le principe est là)
Quel est le meilleur tuto sur internet je parle d'un tut explicant toutes les fonctions en détails des librairies en C

je dirai bien de prendre un bouquin... non pas un bouquin qui te serve à apprendre, mais un bouquin qui te serve comme référence...
(le K&R est pas mal, comme référenc pour le C, mais il ne parle pas de toute la librairie, il me semble sad)
(pour le C++, il y a le "Langage C++", de Bjarne Stroustrup (le fondateur du langage), qui fait une bonne bible... mais PAS DU TOUT adapté à un débuttant, à mon avis)


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

30

disons que la norme ANSI est une définition du langage C,
et le C comporte une "bibliothèque standard", qui contient les fonctions de bases, définies par l'ANSI (autrement dit, la norme dit quelles sont ces fonctions de base). Normalement, tout compilateur C se disant ANSI (c'est à dire quasiment tous !) doivent implémenter ces fonctions Tous les compilateurs C étant ANSI (sauf quelques petits compilateurs sans grande importance), si tu n'utilise que des fonctions ANSI, ton source sera portable d'un compilateur vers un autre (enfin, en théorie)


OK c'est bien ce que je pensais. smile
fopen, printf, sont ANSI. => si tu trouves un compilateur C qui n'a pas ces fonctions, c'est que tu n'as vraiment pas de chance , et tu ferai bien de passer à un autre compilateur... (à moins d'être sur une plate-forme particulière, pour laquelle les entrées/sorties par flux/fichiers ne sont pas utiles) clrscr... je dirait que ce n'est pas ANSI => pas présent sous tous les compilateurs C


Oui je viens de m'en rendre compte pour fopen, printf... On vois assez rapidement les focntions ANSI. wink
si tu utilise des fonctions non ANSI, ça peut marche sur le compilateur que tu utilise....
Mais ça peut ne pas marcher sur un autre compilateur. Par exemple, les extensions GNU ou C99 (le C ANSI étant le C89, il me semble) de GCC ne marchent pas (sauf pour certaines) sous d'autres compilateurs, qui ne sont pas conformes à ces normes ; cela est d'ailleurs un problème qd tu as appris à programmer sous GCC et que tu te retrouves subitement sous un autre compilo


J'utilise DevC++ mais ça serait quand même intressant de porter mes programmes sous Linux voir sur TI donc la portabilité est très importante.
je dirai bien de prendre un bouquin... non pas un bouquin qui te serve à apprendre, mais un bouquin qui te serve comme référence...
(le K&R est pas mal, comme référenc pour le C, mais il ne parle pas de toute la librairie, il me semble ) (pour le C++, il y a le "Langage C++", de Bjarne Stroustrup (le fondateur du langage), qui fait une bonne bible... mais PAS DU TOUT adapté à un débuttant, à mon avis)


En fait j'ai un bouqin "Le langage C++ Micro Application" que je trouve bien fait mais il explique le C++ de façon général vers des choses complexe or le point qui fait défaut c'est que parfois ce bouquin ne montre pas toutes les fonctions ainsi que leur signification... Il ne ce base que sur des exemples assez simpliste. sad

En tout cas j'arrive à m'en sortir grâce à TIGCC, je pensais devoir rapprendre de A à Z des choses pour me mettre à la programmation sur PC et bah non, bien sûr j'ai du chemin mais bon je peux déjà commencer à coder...

Bon juste une simple question, voilà un programme que j'ai réalisé, est-ce que ce programme à une écriture 'standard' et les fonctions sont vraiment adapté à ce que je fais?

http://perso.wanadoo.fr/tisofts/divers/comdos.zip

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.