Bonjour,
voilà je dois faire un exercise et pour celà je dois utiliser dos.h, problème code blocks et mingw ne disposent pas de cette librarie, comment faire pour l'inclure.
merci
Version imprimable
Bonjour,
voilà je dois faire un exercise et pour celà je dois utiliser dos.h, problème code blocks et mingw ne disposent pas de cette librarie, comment faire pour l'inclure.
merci
Je fatigue... depuis le temps, tu n'as toujours compris la différence entre un fichier d'entête (interface : .h) et une bibliothèque (implémentation : .a, .lib).
Ta question n'a aucun sens. MinGW est un compilateur pour Windows en mode x86 32-bit protégé, alors que <dos.h> est un vestige de la glorieuse époque de MS-DOS (mode x86 16-bit réel) des années 80, fourni par Borland (et peut être Microsoft, je ne sais plus)...
Pourquoi ce mélange contre nature ? Que veux-tu faire exactement ?
Bonjour,
J'ai de la doc sur le net qui traite de header et librairies, je vais lire tout ça ce soir (oui jusqu'ici j'avais fais l'impasse sur ça et c'est encore assez flou ces histoires dans ma tête)
au niveau de dos.h, c'est pour mon cours d'histoire (euh je veux dire algo complexe :)), on a du travail à faire qui utilise dos.h (bien sûr je peux remplacer les fonctions à utliser par celle de windows.h) mais le prof n'aime pas ça (à tort). Et moi j'ai aucune envie de programmer sous turbo C (cet éditeur qui me fais regretter mon écran 14'' 320*200).
Merci
gettime () que j'ai déjà remplacée par QueryPerformanceCounter(), mais bon le souci c'est que le jour où je passe l'exam et qu'on me demande de programmer sur TC, je suis dans la mouise.
Je vais installer windows XP sur machine virtuelle, ça sera la meilleure solution pour pas se planter le jour de l'exam :roll:
Merci à toi et bonne année :)
J'ai vu que time.h déclare une structure timespec avec possibilité d'avoir des valeurs de l'ordre de la nano seconde. Mais comment prendre le temps à un instant t, puis prendre le temps à un instant t + 1, pour faire la différence, et obtenir une durée de l'ordre de la nanoseconde.
tester la complexité temporelle de différentes fonctions de tri, j'avais déjà fais un essai, et au final je m'étais résolu à utiliser windows.h qui marchait bien, mais c'était sans compter le retour de dos.h et turbo C 2.0 :roll:, on est en 2007 et à l'école il peuvent toujours pas se résoudre à laisser tomber cet IDE, (surtout quand je pense que code blocks est gratuit en plus.)
Oui c'est parfait
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 #include <stdio.h> #include <stdlib.h> #include <time.h> #include <limits.h> #include "tri.h" #include "tableau.h" #define MAX 32000 int main(void) { int *tab = NULL; clock_t debut; clock_t fin; double duree; tab = initialiser_tableau (tab, MAX); debut = clock (); tri_bulle (tab, MAX); fin = clock (); duree = (double)(fin - debut) / CLOCKS_PER_SEC; printf ("%lf", duree); return 0; }
3.198000
Process returned 0 (0x0) execution time : 3.214 s
Press any key to continue.
Merci
Petit problème lorsqu'on passe sous turbo c 2.1, CLOCKS_PER_SEC n'est pas définie même en ayant pris soin d'inclure time.h, et j'ai pas trop envie de faire un
Code:#define CLOCKS_PER_SEC 1000000
C'est normal, c'est une compilateur 'pre-ANSI'. CLOCKS_PER_SEC n'était pas défini (J'utilise Borland C++ 3.1 pour tester ton code, désolé, je n'ai pas plus ancien).
Tu peux faire
ouCode:
1
2
3
4 #ifndef CLOCKS_PER_SEC #define CLOCKS_PER_SEC 18.2 #endif
Code:
1
2
3
4
5 #include <time.h> #ifndef CLOCKS_PER_SEC #define CLOCKS_PER_SEC CLK_TCK #endif
Reprends moi si je me trompe mais dans ce cas là je peux directement faire
non ?Code:
1
2
3 /* duree en secondes */ duree = (float) (fin - debut) / CLK_TCK;
et si jamais un jour t'en a besoin (vu qu'il est devenu gratos)
http://dn.codegear.com/article/20841
OKi je viens de comprendre le coup du ifndef def
c'est au cas ou le CLOCKS_PER_SEC n'est pas défini il utilise CLK_TCK, ouais c'est mieux ça.