[C++] Récupérer les n derniers caractères

Fermé
Utilisateur anonyme - 30 janv. 2008 à 10:10
 grad - 30 janv. 2008 à 11:54
Bonjour,

J'ai un petit soucis, dans un programme en c++, j'ouvre un fichier .bmp et je dois traiter les informations en récupérant les caractères de l'entête du bitmap.

strncpy permet d'extraire les n premiers caractères d'une chaîne. Comment puis-je faire l'inverse, c'est à dire extraire les n derniers caractères d'une chaîne ?

Ou mieux encore, comment puis extraire n octets d'un fichiers binaires à l'emplacement que je veux dans le fichier. J'espère avoir été assez clair, c'est dur à formuler.

Merci d'avance

2 réponses

Utilisateur anonyme
30 janv. 2008 à 11:42
J'ai trouvé

fonction fseek


prototype: int fseek(FILE * stream, long offset, int whence)

stream: fichier (flux)
offset: début de l'info
whence: SEEK_SET (début du fichier) ou SEEK_CUR (position actuelle) ou SEEK_END (fin du fichier)

le renvoi vaut 1 si réussi.


Cette fonction permet de se placer dans le fichier à l'endroit voulu
On récupére les caractères avec fgetc(FILE* stream), la fonction incrémente automatiquement la position dans le fichier.

0
Comment puis-je faire l'inverse, c'est à dire extraire les n derniers caractères d'une chaîne ?
Tu inverse le nom du fichier et tu iverse les n premiers caractères qui sont en réalité les n derniers caractères
Pour inverser , tu fais une fonction (c'est simple à faire)
0