Re: un peu HS : problème en C

Page principale

Répondre à ce message
Auteur: anne aublanc
Date:  
À: guilde
Sujet: Re: un peu HS : problème en C

----- Original Message -----
From: "anne aublanc" <anne.aublanc@???>
To: <guilde@???>
Sent: Wednesday, December 01, 2004 7:24 AM
Subject: un peu HS : problème en C


| bonjour,

|
| C'est quand même pour mon linux préféré! ;o))

|
| Je ne connais rien en C...
| J'ai dupliqué un pgm C...

|
| J'ai modifié...
| Il me manque juste un petit truc...

|
| J'ai ces lignes :
|    while( ( de = readdir( dirp ) ) != NULL )
|    {
|        if ( strcmp( de->d_name, "." ) == 0 ||
|             strcmp( de->d_name, ".." ) == 0 ||
|             strcmp( de->d_name, dir ) != 0)

|
| Je suis en train de lire un répertoire pour récupérer tous les fichiers

qui
| commencent par toto
| dir = toto
| Dans le fichier je peux avoir toto.01 ou toto.01 toto.02 ....
| de->d_name = toto.01

|
| J'aimerai donc qu'il compare en enlevant les dernières lettres après le
| point et aussi le point car je peux avoir toto.115
| Je ne peux pas dire que j'enlève les 3 dernières lettres, il peut y en

avoir
| 4.
| On fait comment en C?

|
J'ai trouvé une première solution:
Je sais que les 11 premiers caractères sont identiques si même fax.
J'utilise donc :
strncmp( de->d_name, dir, 11 )

Mais si vous avez mieux...
càd enlever le dernier point avec les caractères qui suivent... cela serait
le pérou!

anne