High-Tech
Santé-Médecine
Droit-Finances
CodeS-SourceS
Inscription
Plan
Connexion
Rechercher un code, un tuto, une réponse
Accueil
Forum
Tutoriels
Codes Sources
Snippets
Top membres
Tous les langages
Delphi / Pascal
Java
Python
SQL
RegEx
Flash
ASM
IRC
Graphisme
PDA
ColdFusion
Foxpro
Flex
Visual Basic / VB.NET
Forum
Tutoriels
Codes Sources
Snippets
Top membres
PHP
Forum
Tutoriels
Codes Sources
Snippets
Top membres
C/C++/C++.NET
Forum
Tutoriels
Codes Sources
Snippets
Top membres
Javascript
Forum
Tutoriels
Codes Sources
Snippets
Top membres
C#/.NET
Forum
Tutoriels
Codes Sources
Snippets
Top membres
ASP/ASP.NET
Forum
Tutoriels
Codes Sources
Snippets
Top membres
Accueil
Connexion
Déposer un code
Code
Recherche
Haut
Forum
C / C++ / C++.NET
Sujet Précédent
Sujet Suivant
Débordement de tableaux en cpp
lrocques
Messages postés
1
Date d'inscription
dimanche 5 septembre 2004
Statut
Membre
Dernière intervention
6 septembre 2004
- 6 sept. 2004 à 10:10
magic_Nono
Messages postés
1878
Date d'inscription
jeudi 16 octobre 2003
Statut
Membre
Dernière intervention
16 mars 2011
-
8 sept. 2004 à 10:28
Hello,
Je souhaiterais détecter des débordements de tableaux en cpp sous visual-C6. Quels sont les différents outils ou options qui existent pour cela?
Merci.
lrocques
Afficher la suite
A voir également:
Débordement de tableaux en cpp
Afficher un tableau php en html
-
Conseils pratiques -PHP
.H cpp
-
Forum C / C++ / C++.NET
Ipc cpp
✓
-
Forum C++ & C++ .NET
Tableau de turbo 2
-
Forum VB.NET
TURBO C++ et blocks que choisir
✓
-
Forum C
9 réponses
Réponse 1 / 9
DevGizmo
Messages postés
122
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
27 février 2007
1
6 sept. 2004 à 10:51
Un outil genial: BoundsChecker, j'utilise que ca tout le temps...!!!
@+
Réponse 2 / 9
magic_Nono
Messages postés
1878
Date d'inscription
jeudi 16 octobre 2003
Statut
Membre
Dernière intervention
16 mars 2011
6 sept. 2004 à 18:36
simple tu fais une classe en vérifiant tes allocations / affectations...
en POO, bien proguée, js de PB
Giz> BoundsChecker ne ralentit po trop le sys???
dis ns en plus....
Magic Nono: l'informagicien! 8-)
Réponse 3 / 9
cs_kelly
Messages postés
55
Date d'inscription
jeudi 1 mai 2003
Statut
Membre
Dernière intervention
9 septembre 2004
6 sept. 2004 à 23:56
mmmh l'exemple type de question qu'on ne devrait pas avoir a se poser si on programme proprement :)
Réponse 4 / 9
NitRic
Messages postés
402
Date d'inscription
mardi 1 mai 2001
Statut
Membre
Dernière intervention
15 août 2011
7 sept. 2004 à 04:59
Tout à fait mais, si tu as peur de déborder, garde la taille des tes tableaux dans une variable X et tu y fais référence au besoin
Sinon, si tu as plusieurs tableaux de même type par exemple, tu peux très bien utiliser une petite structure dans ce genre:
typedef struct T_MonArray {
int * m_Array;
size_t m_Size;
T_MonArray(){m_Size=0;m_Array=0;}
}MonArray;
MonArray arr;
arr.m_Array = new int[ 100 ]; // 100 éléments
if ( arr.m_Array ) arr.m_Size = 100; // il y à 100 item dedans
for ( index = 0; index < arr.m_Size; index++ ) {
arr.m_Array[ index ] = valeur;
// ...
}
Ou même avec une class comme M. nono à dit ou encore rendre le tout généric et faire un petit template ...
~(.:: NitRic ::.)~
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Réponse 5 / 9
magic_Nono
Messages postés
1878
Date d'inscription
jeudi 16 octobre 2003
Statut
Membre
Dernière intervention
16 mars 2011
7 sept. 2004 à 09:15
NitRic> ui
petite précision, meme si c'est ds la norme C++,
encore actuellement, pr faire un template, il faut une classe....
++
Magic Nono: l'informagicien! 8-)
Réponse 6 / 9
NitRic
Messages postés
402
Date d'inscription
mardi 1 mai 2001
Statut
Membre
Dernière intervention
15 août 2011
7 sept. 2004 à 20:30
template ne va pas obligatoirement avec class
Ce que je voulais dire exactement c'est qu'il pourait ce faire une simple class ou encore un template(class template) pour rendre le tout généric ...
~(.:: NitRic ::.)~
Réponse 7 / 9
magic_Nono
Messages postés
1878
Date d'inscription
jeudi 16 octobre 2003
Statut
Membre
Dernière intervention
16 mars 2011
8 sept. 2004 à 08:45
peux tu donner un exemple ne marchant pas avec des classe
éventuellt fonctionnant sous VC6
Merci
Magic Nono: l'informagicien! 8-)
Réponse 8 / 9
NitRic
Messages postés
402
Date d'inscription
mardi 1 mai 2001
Statut
Membre
Dernière intervention
15 août 2011
8 sept. 2004 à 10:01
un exemple de template sans class !?
demandez et vous receverez qu'il disait
Fait juste pour toi à l'instant même :)
/**************************************************/
#include
#include <ctime>
#include <cstdio>
using namespace std;
#define _MAX_ARRAY_SIZE 30
#define _WAIT()\
puts( "Press Enter to continue ...\n" );\
getc( stdin )
template<typename T>
void GenericBubbleSort( T *& array, size_t max_size ) {
T t_val;
for ( size_t i = 0; i < max_size-1; i++ ) {
for ( size_t a = i+1; a < max_size; a++ ) {
if ( array[ a ] < array[ i ] ) {
t_val = array[ i ];
array[ i ] = array[ a ];
array[ a ] = t_val;
}
}
}
}
template<typename T>
void GenericPrintArray( T *& array, size_t max_size ) {
for ( size_t i = 0; i < max_size; i++ )
cout << "Item " << i << ": " << array[ i ] << endl;
}
int main( int argc, char * argv[] ) {
size_t i = 0;
size_t a = 0;
int * int_array = NULL;
double * dbl_array = NULL;
char ** str_array = NULL;
srand( time( NULL ) );
int_array = new int[ _MAX_ARRAY_SIZE + 1 ];
if ( !int_array ) {
cout << "new failed ..." << endl;
return 0;
}
for ( ; i < _MAX_ARRAY_SIZE; i++ )
int_array[ i ] = ( ( rand() % 1234 ) + 1 );
GenericBubbleSort( int_array, i );
GenericPrintArray( int_array, i );
if ( int_array ) delete [] int_array;
_WAIT();
dbl_array = new double[ _MAX_ARRAY_SIZE + 1 ];
if ( !dbl_array ) {
cout << "new failed ..." << endl;
return 0;
}
for ( i = 0; i < _MAX_ARRAY_SIZE; i++ )
dbl_array[ i ] = (double) ( ( rand() % 1234 ) + 1 );
GenericBubbleSort( dbl_array, i );
GenericPrintArray( dbl_array, i );
if ( dbl_array ) delete [] dbl_array;
_WAIT();
str_array = new char *[ _MAX_ARRAY_SIZE + 1 ];
if ( !str_array ) {
cout << "new failed ..." << endl;
return 0;
}
for ( i = 0; i < _MAX_ARRAY_SIZE; i++ ) {
str_array[ i ] = new char[ 26 + 1 ];
for ( a = 0; a < 26; a++ )
str_array[ i ][ a ] = ( 97 + ( (rand() % 25) + 1 ) );
str_array[ i ][ a ] = '\0';
}
for ( i = 0; i < _MAX_ARRAY_SIZE; i++ ) {
GenericBubbleSort( str_array[ i ], 26 );
GenericPrintArray( str_array[ i ], 26 );
if ( str_array[ i ] ) delete [] str_array[ i ];
}
delete [] str_array;
cout << endl << "End ..." << endl << endl << flush;
return 0;
}
/**************************************************/
~(.:: NitRic ::.)~
Réponse 9 / 9
magic_Nono
Messages postés
1878
Date d'inscription
jeudi 16 octobre 2003
Statut
Membre
Dernière intervention
16 mars 2011
8 sept. 2004 à 10:28
k
j'en aV entendu parlé,
je ne saV po que CT implémenté
merci
++
Magic Nono: l'informagicien! 8-)
Votre réponse
Discussions similaires
qu'est ce que c'est que ce map ???
wismerhill__
-
18 avril 2006 à 12:51
vecchio56
-
28 mars 2008 à 18:32
Les tableaux - constructeur
axelvdk
-
15 mars 2012 à 16:00
axelvdk
-
15 mars 2012 à 16:22
debordement de pile
sebrs1
-
6 mai 2002 à 21:37
wyckit
-
9 mai 2004 à 15:57
C'est quoi itoa?
cs_bball
-
12 avril 2004 à 10:53
HCJarod
-
12 avril 2004 à 14:49
Turbo C++
cs_jrod
-
17 sept. 2002 à 23:27
cmarsc
-
19 sept. 2002 à 10:22
Rejoignez-nous