Exemple #1
0
static char *
netname(int mid)
{
	register struct netmach *np;

	if (mid & 0200)
		return(mlook(mid));
	for (np = netmach; np->nt_mid != 0; np++)
		if (np->nt_mid == mid)
			return(np->nt_machine);
	return(NOSTR);
}
/* Main du programme mlook
 * @param: argc, le nombre d'arguments pris en paramètres du programme
 * @param: argv[], un tableau contenant les arguments pris en paramètres du programme
 */
int main(int argc, char* argv[]) {

  /* Déclaration de variables
   */
  FILE *fichier;
  char *mot_a_chercher;
  char *fichier_lu;
  int retour_mlook;

  /* Initialisation des variables déclarées
   */
  fichier_lu = argv[1];
  mot_a_chercher = argv[2];
  fichier = fopen(argv[1], "r");

  /* Vérification du fichier, s'il est nul, on renverra un message d'erreur
   */
  if (fichier == NULL || ((fichier != NULL) && (argc <= 2))){ /*Si le fichier ouvert est vide*/
    printf("\nRègles d'utilisation du programme %s\n\nCe programme prend en paramètres: %s [1] [2]\n1 _ un fichier .txt non vide,\n2 _ un mot.\n\nCe programme se chargera de chercher le mot dans le fichier .txt, s'il le trouve en tant que premier mot dans une ligne, on imprimera le numéro de la ligne, ainsi que la ligne.\n\nUn problème? Une critique? Contactez-moi: antonin.carette[at]gmail[dot]com\n\n",argv[0], argv[0]); /*Message d\'erreur*/
    exit(EXIT_FAILURE); /*Sortie d\'erreur*/
  }

  /* Si tout va bien pour le fichier, on cherche le mot à l\'interieur de celui-ci; on sauvegarde la valeur de retour
   */
  retour_mlook = mlook(fichier, mot_a_chercher);

   /* On regarde si la fermeture du fichier est correcte, sinon on renverra un message d'erreur
   */
  if (fclose(fichier) == EOF) { /*Si le fichier ouvert ne peut se fermer -> pas de EOF*/
    printf("Problème de fermeture du fichier %s\n", fichier_lu); /*Message d\'erreur*/
    exit(EXIT_FAILURE); /*Sortie d\'erreur*/
  }

  /* Le programme s\'est bien exécuté
   */
  return retour_mlook;

}