à quoi sert le mot clé "near" en c/c++: exemple char *near ; ou encore int near my_funct(){}
à quoi sert le mot clé "near" en c/c++: exemple char *near ; ou encore int near my_funct(){}
A priori near est le nom d'une variable.
char * near; on déclare dans notre programme utiliser une variable nommée "near" qui sera de type pointeur sur caractère.
int near; la même chose à la différence que "near" désigne maintenant une variable de type entier.
near (et son pendant far) ne sont pas des mots cles du C ou du C++ mais des mots cles propres a certains compilateurs pour certaines architectures particulieres et sont liees a l'organisation de la memoire.
Si mes souvenirs sont bons, near indique un saut dans la page courante et far dans une autre page.
Il n'y a plus beaucoup de cas ou c'est utile.
merci gl pour cette précision j'étais quasiment à l'ouest
Oui c'est ça. Ca permet de définir où, en mémoire, va être placée la donnée (mémoire proche ou lointaine, paginée ou non)Envoyé par gl
En fait c'est beaucoup utilisé dans l'embarqué, très peu dans la programmation classique
Du temps de DOS / programmation 16 bits sur Intel, c'était aussi très utilisé (mémoire segmentée). De mémoire, un pointeur near permet d'adresser 64Ko, et un far 1Mo.
Il existe un lien entre l'instruction far de ces comppilateurs et far de windows ? Car il me semble je peux me tromper il existe un type FAR sous windows non ?
Oui, qui avait un sens du temps de Win16 = monde 16 bits. Mais c'est périmé en Win32, FAR est défini ainsi d'ailleurs:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 #define far #define near #define FAR far #define NEAR near
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager