IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

Question à propos du & et du ^


Sujet :

Linux

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    396
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2006
    Messages : 396
    Par défaut Question à propos du & et du ^
    Bonjour à tous.

    Je vais essayer de faire simple, a l'aide de and et de xor et muni du mon adresse ip, de mon masque réseau et d'un ip distante, je dois réussir a calculer si cette ip distante est sur le même réseau local que moi.

    J'ai donc les variables suivantes :
    char temp_eth1[100]; // qui contient mon ip
    char mask_eth1[100]; // qui contient mon mask
    (j'ai ajouté un 0 en fin de chaine après avoir mis les info dedans)

    dans un premier temps, je désire faire quelque chose comme ceci :
    network_eth1 =temp_eth1 & mask_eth1;

    ou network_eth1 est déclaré comme les 2 autres variables.

    Biensur, cela engendre l'erreur suivante :
    invalid operands to binary &

    et par après je voudrais faire cette condition :
    if((mask_eth1 & inet_ntoa(c_ip->destination_ip))^ network_eth1 > 0){

    mais biensur, même erreur.

    Ou est-ce que je me suis trompé ? Pourquoi je ne peux pas faire de and et de xor sur les bits d'une chaine ?

    Je vous remerci d'avance pour votre réponse.

  2. #2
    Membre éclairé

    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Février 2005
    Messages
    464
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2005
    Messages : 464
    Par défaut
    Tu fais l'opération sur les pointeurs, pas leur contenu.
    Passe par une convertion en long et fais un décalage d'un octet pour avoir l'adresse de sous-réseau.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    396
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2006
    Messages : 396
    Par défaut
    Merci, avec la convertion en long puis le traitement et ensuite la reconvertion en char, cela fonctionne parfaitement, il n'y a pas besoin de décalage.

    Thx et à bientot

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Question à propos des compilateurs
    Par elf dans le forum Autres éditeurs
    Réponses: 4
    Dernier message: 20/07/2005, 17h00
  2. Question à propos des niveaux de transaction
    Par davy.g dans le forum Oracle
    Réponses: 3
    Dernier message: 18/01/2005, 15h31
  3. Petite question à propos du redbook...
    Par Michaël dans le forum OpenGL
    Réponses: 3
    Dernier message: 04/11/2004, 12h54
  4. Petite question à propos d'une requete
    Par ViBy dans le forum Langage SQL
    Réponses: 4
    Dernier message: 15/09/2004, 12h21
  5. Une question à propos des thread
    Par tscoops dans le forum C++Builder
    Réponses: 4
    Dernier message: 07/11/2003, 14h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo