Accueil > Forum > > > > débordement de tableaux en cpp
débordement de tableaux en cpp
lundi 6 septembre 2004 à 10:10:05 |
débordement de tableaux en cpp

lrocques
|
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
|
|
lundi 6 septembre 2004 à 10:51:19 |
Re : débordement de tableaux en cpp

DevGizmo
|
Un outil genial: BoundsChecker, j'utilise que ca tout le temps...!!!
@+
|
|
lundi 6 septembre 2004 à 18:36:27 |
Re : débordement de tableaux en cpp

magic_Nono
|
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!
|
|
lundi 6 septembre 2004 à 23:56:00 |
Re : débordement de tableaux en cpp

kelly
|
mmmh l'exemple type de question qu'on ne devrait pas avoir a se poser si on programme proprement :)
|
|
mardi 7 septembre 2004 à 04:59:46 |
Re : débordement de tableaux en cpp

NitRic
|
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 ::.)~
|
|
mardi 7 septembre 2004 à 09:15:36 |
Re : débordement de tableaux en cpp

magic_Nono
|
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!
|
|
mardi 7 septembre 2004 à 20:30:25 |
Re : débordement de tableaux en cpp

NitRic
|
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 ::.)~
|
|
mercredi 8 septembre 2004 à 08:45:11 |
Re : débordement de tableaux en cpp

magic_Nono
|
peux tu donner un exemple ne marchant pas avec des classe éventuellt fonctionnant sous VC6 Merci Magic Nono: l'informagicien!
|
|
mercredi 8 septembre 2004 à 10:01:23 |
Re : débordement de tableaux en cpp

NitRic
|
un exemple de template sans class !? demandez et vous receverez qu'il disait
Fait juste pour toi à l'instant même :)
/**************************************************/
#include <iostream> #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 ::.)~
|
|
mercredi 8 septembre 2004 à 10:28:24 |
Re : débordement de tableaux en cpp

magic_Nono
|
k j'en aV entendu parlé, je ne saV po que CT implémenté merci ++ Magic Nono: l'informagicien!
|
|
Cette discussion est classée dans : tableaux, cpp, débordement
Répondre à ce message
Sujets en rapport avec ce message
taille maximum tableaux [ par yepla75 ]
Hello,Je développe avec Dev-CPP ; dans un programme en C, je devais créer de très gros tableaux (je n'ai plus la taille en tête, malheureusement) => i
strcpy et strcpy_s [ par lektrosonic ]
bonjour, j'ai ramene mon projet sous visual studio 2005 pro (de dev-cpp) sous dev-cpp j utilisait strcpy..aucun probleme.. alors que la premiere fois
Comment utilser les fonctions cap de MSDN sous dev-cpp [ par ptitcon51 ]
J'ai un petit problème tout bête.Comment puis-je utiliser toutes les fonctions du genre capCreateCapture() ou capDriverConnect() de MSDN depui dev-cpp
cpp + mysql [ par mnel ]
Bonjour à tous ...Je suis amené à travailler régulièrment avec des bases de données SQL (langage avec lequel je suis à l'aise) par le biais notemment
Dev cpp (Les links) [ par keitaro_59 ]
Bonjour tout le monde, alors voilà moi je voudrai juste une petite information concernant DEV C++, je ne le connais pas tros bien, je voudrais juste
Faire une textbox avec opengl dev-cpp [ par sebastienmz ]
Bonjour Je cherche depui un bon moment de l'aide pour faire une textbox en opengl. ce que j'aimerais c'est que on puisse voire un simple cadre ou autr
Cherche intephace graphique simple [ par yggy ]
Salut tlmje cherche une intephace graphique simple avec des bouttons des textbox etc...en C ou Cpp pour dev cpp si quelqu'unpeut m'aider ça serait coo
Probleme de compilation Qt avec Dev-cpp [ par julien_boss ]
Bonjour, bon le probleme n'est pas que je n'arrive absolument pas à compiler Qt avec dev-cpp. Seulement, à la compilation du tutorial n°7 de la docum
Calcul numérique avec Dev cpp [ par ffnajia ]
Bonjour à tous,Est ce que c'est possible de faire du calcul numérique avec dev cpp? on peut trouver des solveur pour résoudre des équations différenti
help au namespace [ par sam_45 ]
Bonjour à tous,Je suis entrains de developper mon premier logiciel en C++.net où suis debutant. J'ai un problème avec le namespace. je n'arrive pas à
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|