Je rencontre un problème avec la fonction <<fread>> de cstdio ( size_t
fread ( void * ptr, size_t size, size_t count, FILE * stream ); ).
Je lis un fichier plutôt volumineux (~500Mo) avec cette fonction. Et il
semble que l'ordre des données retournées sont aléatoire.
Je veux dire par là, non pas que les données ont des valeurs aléatoire.
Mais plutôt qu'une ligne m'est retournée avant une autre.
Est-ce que ce genre de problème interpel quelqu'un parce que moi, je vois
pas . . .
Voici la fonction de lecture de mon code ci-dessous.
Petite remarque : ne faites pas attention aux petits bouts de C++. Le
problème vient à priori d'une fonction C. C'est pourquoi je poste sur ce
forum.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
-ed-
On 1 nov, 00:30, TSalm wrote:
Je rencontre un problème avec la fonction <<fread>> de cstdio
Admettons que tu parles de <cstdio>. Ca n'existe pas en C. Si tu fais du C++; tu te trompes de forum.
Je lis un fichier plutôt volumineux (~500Mo) avec cette fonction. Et il semble que l'ordre des données retournées sont aléatoire. Je veux dire par là, non pas que les données ont des valeurs aléato ire. Mais plutôt qu'une ligne m'est retournée avant une autre.
fread()ne lit pas des 'lignes', mais des blocs de données. Si le codage est correct, il ne peut pas y avoir d'inversions. Il faut évidemment prévoir la place nécessaire à la lecture.
Écrit ton code en C pur, car je ne comprends rien au charabia C++.
On 1 nov, 00:30, TSalm <ts...@free.fr> wrote:
Je rencontre un problème avec la fonction <<fread>> de cstdio
Admettons que tu parles de <cstdio>. Ca n'existe pas en C. Si tu fais
du C++; tu te trompes de forum.
Je lis un fichier plutôt volumineux (~500Mo) avec cette fonction. Et il
semble que l'ordre des données retournées sont aléatoire.
Je veux dire par là, non pas que les données ont des valeurs aléato ire.
Mais plutôt qu'une ligne m'est retournée avant une autre.
fread()ne lit pas des 'lignes', mais des blocs de données. Si le
codage est correct, il ne peut pas y avoir d'inversions. Il faut
évidemment prévoir la place nécessaire à la lecture.
Écrit ton code en C pur, car je ne comprends rien au charabia C++.
Je rencontre un problème avec la fonction <<fread>> de cstdio
Admettons que tu parles de <cstdio>. Ca n'existe pas en C. Si tu fais du C++; tu te trompes de forum.
Je lis un fichier plutôt volumineux (~500Mo) avec cette fonction. Et il semble que l'ordre des données retournées sont aléatoire. Je veux dire par là, non pas que les données ont des valeurs aléato ire. Mais plutôt qu'une ligne m'est retournée avant une autre.
fread()ne lit pas des 'lignes', mais des blocs de données. Si le codage est correct, il ne peut pas y avoir d'inversions. Il faut évidemment prévoir la place nécessaire à la lecture.
Écrit ton code en C pur, car je ne comprends rien au charabia C++.
TSalm
>> Je rencontre un problème avec la fonction <<fread>> de cstdio
Admettons que tu parles de <cstdio>. Ca n'existe pas en C. Si tu fais du C++; tu te trompes de forum.
Je voulais bien parler de <<fread>> de <<stdio>>. Mes excuses pour cette erreur.
Je lis un fichier plutôt volumineux (~500Mo) avec cette fonction. Et il semble que l'ordre des données retournées sont aléatoire. Je veux dire par là, non pas que les données ont des valeurs aléatoire. Mais plutôt qu'une ligne m'est retournée avant une autre.
fread()ne lit pas des 'lignes', mais des blocs de données.
Oui. Encore une mauvaise sémantique de ma part. Pour ma défense, spécifiquement, ces blocs représentent en fait des lignes de taille fixe :-)
Si le codage est correct, il ne peut pas y avoir d'inversions. Il faut évidemment prévoir la place nécessaire à la lecture.
Codage? Tu veux dire le codage du fichier, ou le code du programme ?
Écrit ton code en C pur, car je ne comprends rien au charabia C++.
Intégriste va ;-)
>> Je rencontre un problème avec la fonction <<fread>> de cstdio
Admettons que tu parles de <cstdio>. Ca n'existe pas en C. Si tu fais
du C++; tu te trompes de forum.
Je voulais bien parler de <<fread>> de <<stdio>>. Mes excuses pour cette
erreur.
Je lis un fichier plutôt volumineux (~500Mo) avec cette fonction. Et il
semble que l'ordre des données retournées sont aléatoire.
Je veux dire par là, non pas que les données ont des valeurs aléatoire.
Mais plutôt qu'une ligne m'est retournée avant une autre.
fread()ne lit pas des 'lignes', mais des blocs de données.
Oui. Encore une mauvaise sémantique de ma part. Pour ma défense,
spécifiquement, ces blocs représentent en fait des lignes de taille fixe
:-)
Si le
codage est correct, il ne peut pas y avoir d'inversions. Il faut
évidemment prévoir la place nécessaire à la lecture.
Codage? Tu veux dire le codage du fichier, ou le code du programme ?
Écrit ton code en C pur, car je ne comprends rien au charabia C++.
>> Je rencontre un problème avec la fonction <<fread>> de cstdio
Admettons que tu parles de <cstdio>. Ca n'existe pas en C. Si tu fais du C++; tu te trompes de forum.
Je voulais bien parler de <<fread>> de <<stdio>>. Mes excuses pour cette erreur.
Je lis un fichier plutôt volumineux (~500Mo) avec cette fonction. Et il semble que l'ordre des données retournées sont aléatoire. Je veux dire par là, non pas que les données ont des valeurs aléatoire. Mais plutôt qu'une ligne m'est retournée avant une autre.
fread()ne lit pas des 'lignes', mais des blocs de données.
Oui. Encore une mauvaise sémantique de ma part. Pour ma défense, spécifiquement, ces blocs représentent en fait des lignes de taille fixe :-)
Si le codage est correct, il ne peut pas y avoir d'inversions. Il faut évidemment prévoir la place nécessaire à la lecture.
Codage? Tu veux dire le codage du fichier, ou le code du programme ?
Écrit ton code en C pur, car je ne comprends rien au charabia C++.
Intégriste va ;-)
TSalm
Le Sun, 01 Nov 2009 14:08:16 +0100, TSalm a écrit:
Je rencontre un problème avec la fonction <<fread>> de cstdio
Admettons que tu parles de <cstdio>. Ca n'existe pas en C. Si tu fais du C++; tu te trompes de forum.
Je voulais bien parler de <<fread>> de <<stdio>>. Mes excuses pour cette erreur.
Je lis un fichier plutôt volumineux (~500Mo) avec cette fonction. Et il semble que l'ordre des données retournées sont aléatoire. Je veux dire par là, non pas que les données ont des valeurs aléatoire. Mais plutôt qu'une ligne m'est retournée avant une autre.
fread()ne lit pas des 'lignes', mais des blocs de données.
Oui. Encore une mauvaise sémantique de ma part. Pour ma défense, spécifiquement, ces blocs représentent en fait des lignes de taille fixe :-)
Si le codage est correct, il ne peut pas y avoir d'inversions. Il faut évidemment prévoir la place nécessaire à la lecture.
Codage? Tu veux dire le codage du fichier, ou le code du programme ?
Écrit ton code en C pur, car je ne comprends rien au charabia C++.
Intégriste va ;-)
C'est effectivement un problème dans le code. Merci pour ta réponse.
-- Utilisant le client e-mail révolutionnaire d'Opera : http://www.opera.com/mail/
Le Sun, 01 Nov 2009 14:08:16 +0100, TSalm <tsalm@free.fr> a écrit:
Je rencontre un problème avec la fonction <<fread>> de cstdio
Admettons que tu parles de <cstdio>. Ca n'existe pas en C. Si tu fais
du C++; tu te trompes de forum.
Je voulais bien parler de <<fread>> de <<stdio>>. Mes excuses pour cette
erreur.
Je lis un fichier plutôt volumineux (~500Mo) avec cette fonction. Et il
semble que l'ordre des données retournées sont aléatoire.
Je veux dire par là, non pas que les données ont des valeurs aléatoire.
Mais plutôt qu'une ligne m'est retournée avant une autre.
fread()ne lit pas des 'lignes', mais des blocs de données.
Oui. Encore une mauvaise sémantique de ma part. Pour ma défense,
spécifiquement, ces blocs représentent en fait des lignes de taille fixe
:-)
Si le
codage est correct, il ne peut pas y avoir d'inversions. Il faut
évidemment prévoir la place nécessaire à la lecture.
Codage? Tu veux dire le codage du fichier, ou le code du programme ?
Écrit ton code en C pur, car je ne comprends rien au charabia C++.
Intégriste va ;-)
C'est effectivement un problème dans le code.
Merci pour ta réponse.
--
Utilisant le client e-mail révolutionnaire d'Opera :
http://www.opera.com/mail/
Le Sun, 01 Nov 2009 14:08:16 +0100, TSalm a écrit:
Je rencontre un problème avec la fonction <<fread>> de cstdio
Admettons que tu parles de <cstdio>. Ca n'existe pas en C. Si tu fais du C++; tu te trompes de forum.
Je voulais bien parler de <<fread>> de <<stdio>>. Mes excuses pour cette erreur.
Je lis un fichier plutôt volumineux (~500Mo) avec cette fonction. Et il semble que l'ordre des données retournées sont aléatoire. Je veux dire par là, non pas que les données ont des valeurs aléatoire. Mais plutôt qu'une ligne m'est retournée avant une autre.
fread()ne lit pas des 'lignes', mais des blocs de données.
Oui. Encore une mauvaise sémantique de ma part. Pour ma défense, spécifiquement, ces blocs représentent en fait des lignes de taille fixe :-)
Si le codage est correct, il ne peut pas y avoir d'inversions. Il faut évidemment prévoir la place nécessaire à la lecture.
Codage? Tu veux dire le codage du fichier, ou le code du programme ?
Écrit ton code en C pur, car je ne comprends rien au charabia C++.
Intégriste va ;-)
C'est effectivement un problème dans le code. Merci pour ta réponse.
-- Utilisant le client e-mail révolutionnaire d'Opera : http://www.opera.com/mail/