Salut et merci pour ton aide,
je viens de recommencer un projet neuf dans visual studio avec tes remarques mais maintenant le programme compile mais à la première lecture j'ai une erreur:
Exception non gérée à 0x5D09C28C (msvcr120d.dll) dans PRj24_visual.exe*: 0xC0000005*: Violation d'accès lors de l'écriture à l'emplacement 0xCCCCCCCC.
Donc maintenant j'ai bien mes fichiers .c et dans la propriété du projet j'ai Compiler comme code C (/TC).
Mon main.c
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| // PRj24_visual.cpp: dÈfinit le point d'entrÈe pour l'application console.
//
#include "stdafx.h"
#include "fonctions.h"
#define DMAXDATE 5
int _tmain(int argc, _TCHAR* argv[])
{
int tDate[DMAXDATE][3];
char tDateConvert[DMAXDATE][16];
int dNbrLues = 0;
int(*pDate)[DMAXDATE][3] = &tDate;
// -------------------
// Encondage des dates
// -------------------
ecLectDates(pDate, DMAXDATE, &dNbrLues);
return 0;
} |
foncions.h
void ecLectDates(int(*pDate)[][3], int dMaxDate, int *pNbrLues);
fonctions.c
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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
| #include "stdafx.h"
#include "fonctions.h"
#define MSG_1 11
#define MSG_2 12
#define MSG_3 13
#define JOUR 0
#define MOIS 1
#define ANNEE 2
void ecLectDates(int(*pDate)[][3], int dMaxDate, int *pNbrLues)
{
do
{
/* encodage jour */
affichageMessage(MSG_1);
//scanf("%d", &dValeur);
scanf("%d", (*pDate)[*pNbrLues][JOUR]);
/* encodage mois */
affichageMessage(MSG_2);
scanf("%d", (*pDate)[*pNbrLues][MOIS]);
/* encodage annee */
affichageMessage(MSG_3);
scanf("%d", (*pDate)[*pNbrLues][ANNEE]);
(*pNbrLues)++;
} while (*pNbrLues < dMaxDate);
}
// ----------------------------------------
// fonction affichage d'un tableau d'entier
// ----------------------------------------
void affichageTabEntier(int (*pTab)[][3], int dNbrLues)
{
int i;
for (i = 0; i < dNbrLues; i++)
{
printf("%s", (*pTab)[i][JOUR]);
printf("%s", (*pTab)[i][MOIS]);
printf("%s", (*pTab)[i][ANNEE]);
}
}
// --------------------------
// fonction affichage message
// --------------------------
void affichageMessage(int MSG_ID)
{
switch (MSG_ID) {
case 11:
puts("Jour: ");
break;
case 12:
puts("Mois: ");
break;
case 13:
puts("Annee: ");
break;
default:
break;
}
} |
Partager