Accéder a un tableau très grand

Signaler
Messages postés
11
Date d'inscription
lundi 19 août 2002
Statut
Membre
Dernière intervention
29 octobre 2004
-
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
-
Langage : C ou C++

Voila, j'ai un très grand tableau, alloué dynamiquement avec malloc (+de 65000 emplacements)

Son type est char*

Pour le remplir, pas de pb, car je dump directment un fichier avec fread.

Mais pour le relire, impossible de lire les éléments au dessus de 4096 (taille d'une page) il me fais une erreur mémoire.
Même en essayant avec les pointeurs.

Ma question, comment récupérer les éléments d'un tableau si grand ?

3 réponses

Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
27
Si est sur win32:
Pas normal, la memoire est vue de facon lineaire par les progs sur 4 Go. Si tu n'alloues que 65000 octets, c'est petit mais pour les vraiment grands tableaux utiliser VirtualAlloc().
BruNews, ciao...
Messages postés
11
Date d'inscription
lundi 19 août 2002
Statut
Membre
Dernière intervention
29 octobre 2004

J'utilise dev c++, en programmation console
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
27
Je suis inCONSOLable depuis bientot 10 ans.
Dans tous les cas, si tu vises Windows, voir ce que j'ai mis plus haut.
BruNews, ciao...