info-help Index du Forum info-help
Bienvenue sur le site des utilisateurs raisonnables de l'informatique
 
 FAQFAQ   RechercherRechercher   MembresMembres   GroupesGroupes   S’enregistrerS’enregistrer 
 ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 

errno.h

 
Poster un nouveau sujet   Répondre au sujet    info-help Index du Forum -> Info-help -> Tutorial
Sujet précédent :: Sujet suivant  
Auteur Message
Co2SoFt


Hors ligne

Inscrit le: 03 Mai 2006
Messages: 3
Localisation: haute normandie
Point(s): 0
Moyenne de points: 0,00

MessagePosté le: Mar 9 Mai 2006 - 07:29    Sujet du message: errno.h Répondre en citant

En programmation C et C++ nous pouvont faire appel a des fonctions éxistante dans le language, celle ci renvoi ce que l'on attend/veut mais peu également échoué dans ce cas elle renvoie un code d'erreure et errno contien l'erreure.
Il y a deux facon d'obtenir cette erreure :
1) faire appel a perror
2) utiliser strerror

Pour démontrer tout ca nous allons dans un code ouvrir un socket nécessitan d'etre en root.

Code:

#include <stdio.h>
#include <errno.h>

#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netinet/ip.h>
#include <netinet/tcp.h>

int
  main()
{
  int sock;
  sock = socket(AF_INET, SOCK_RAW, IPPROTO_TCP);
  if (sock < 0)
   perror("ERROR for socket");
return 0;
}



si ce code est éxécuté en user il se produit une erreure et nous obtenons comme message :
Citation:

ERROR for socket: Operation not permitted


Miantenan nous pouvont obtenir l'erreure sous une autre forme grace a un printf "%s"
Voici le code :
Code:

#include <stdio.h>
#include <errno.h>
#include <sys/types.h> //socket
#include <sys/socket.h> //socket
#include <netinet/in.h>
#include <netinet/ip.h>
#include <netinet/tcp.h>

int
  main()
{
  int sock;
  sock = socket(AF_INET, SOCK_RAW, IPPROTO_TCP);
  if (sock < 0)
   printf ("ERROR for sock : %s\n", strerror(errno));
return 0;
}



A l'execution (en user) il s'affiche :
Citation:
ERROR for sock : Operation not permitted


Voila pour l'affichage des erreures contenu dans errno.

Consulté les man pour plus de détail
_________________
Co2SoFt
Revenir en haut
Publicité






MessagePosté le: Mar 9 Mai 2006 - 07:29    Sujet du message: Publicité

PublicitéSupprimer les publicités ?
Revenir en haut
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    info-help Index du Forum -> Info-help -> Tutorial Toutes les heures sont au format GMT
Page 1 sur 1

 
Sauter vers:  

Index | Panneau d’administration | Créer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Powered by phpBB © 2001, 2018 phpBB Group
Traduction par : phpBB-fr.com