Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1011 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  [VC++] char FAR *toto ?! kesako ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[VC++] char FAR *toto ?! kesako ?

n°500187
husiana
Posté le 28-08-2003 à 08:39:06  profilanswer
 

voila, j'ai trouvé ca, dans un char FAR * ils stockent le nom de l'ordinateur, comment faire pour le mettre dans un char*, et qu'est-ce qu'un char FAR * ??!!
 
merci :-p


---------------
http://husiana.myftp.org/phpsysinfo
mood
Publicité
Posté le 28-08-2003 à 08:39:06  profilanswer
 

n°500193
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 28-08-2003 à 08:43:58  profilanswer
 

Ca date de l'époque du DOS ou la mémoire était segmentée en blocs de 64 Ko. Quand tu déclarais une variable en FAR, tu indiquais au compilo que tu voulais que cette variable soit dans un segment différent du segment courant


Message édité par Harkonnen le 28-08-2003 à 09:02:56

---------------
J'ai un string dans l'array (Paris Hilton)
n°500197
husiana
Posté le 28-08-2003 à 08:46:28  profilanswer
 

mais pourquoi alors qd je mets un char * au lieu du char FAR * il chie ? ca devrais passer maintenant ac le compilo de Vc++ ?!

n°500202
*syl*
--> []
Posté le 28-08-2003 à 08:53:28  profilanswer
 

Bah tu castes, c'est tout..

n°500206
husiana
Posté le 28-08-2003 à 08:54:48  profilanswer
 

je quoi...?:-/

n°500213
*syl*
--> []
Posté le 28-08-2003 à 08:58:31  profilanswer
 

void fonction(char far *p);
 
char *r ;
fonction(static_cast<char far *>(r)) ;


Message édité par *syl* le 28-08-2003 à 09:00:13
n°500227
husiana
Posté le 28-08-2003 à 09:08:03  profilanswer
 

hum hum, zarbe :-p!
 
j'ai fais ca et ca marche partout, sauf sur un poste, il me renvoie du caca, il est sur XP pro mais ca fonctionne sur les autres XP Pro ou 2000Pro...bizzare koi!
 
char      *tetedezob(char FAR buffer[64])
{
    char  str[64];
/*
.....
*/
    for (int i = 4; i != (64 - phe->h_length);i++)
        str[i - 4] = phe->h_addr_list[I][i];
 
    return (str);
}
 
merci a vous, je sais ce que c'est un char FAR * maintenant :-p!

n°500262
gatorette
Posté le 28-08-2003 à 09:48:27  profilanswer
 

husiana a écrit :

Code :
  1. char      *tetedezob(char FAR buffer[64])
  2. {
  3.     char  str[64];
  4. /*
  5. .....
  6. */
  7.     return (str);
  8. }




 
Tu renvoies une variable locale !!! Tu as de la chance que ça marche sur certaines machines.
 
Et sinon, il me semble que FAR est défini dans les headers Windows comme ne correspondant à rien (#define FAR), donc tu n'as même pas besoin de cast.


---------------
each day I don't die is cheating
n°500284
LeGreg
Posté le 28-08-2003 à 10:06:35  profilanswer
 

[citation=500262,1]
Tu renvoies une variable locale !!! Tu as de la chance que ça marche sur certaines machines.
[/citation]
 
On a plutot de la chance que son programme ne marche pas sur une machine.. Son bug aurait pu passer inaperçu..
 
LeGreg


Message édité par LeGreg le 28-08-2003 à 10:06:46
n°500317
husiana
Posté le 28-08-2003 à 10:37:19  profilanswer
 

merci les gens, BUG resolu, tt marche niquel!
 
sympatoche :-p!


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  [VC++] char FAR *toto ?! kesako ?

 

Sujets relatifs
[MySQL] type char et norme SQL[C] Ajout d'un char en fin de chaine en boucle
comment convertir un char en int ??Convertir un char en const char* ?
[C]Probleme de char et string[C++] rechercher un string dans un string sans convertire en char * ?
pb avec FAR et PASCAL c vieux ^^Comment mettre une valeur nulle dans un char ????
[C/C++] Transtypage int -> char[]Fonction qui retourne un char*
Plus de sujets relatifs à : [VC++] char FAR *toto ?! kesako ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR