DESIGN STUDIO FORUM
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.



 
PortailAccueilRechercherDernières imagesS'enregistrerConnexion
Le Deal du moment : -38%
Ecran PC gaming 23,8″ – ACER KG241Y P3bip ...
Voir le deal
99.99 €

 

 Retrouver une sous extension avec C

Aller en bas 
AuteurMessage
Admin
Admin
Admin


Masculin
Nombre de messages : 138
Age : 38
Date d'inscription : 02/09/2006

Retrouver une sous extension avec C Empty
MessageSujet: Retrouver une sous extension avec C   Retrouver une sous extension avec C EmptyMer 13 Sep - 4:50

Code:
// MET DANS dst CE QUI EST ENTRE LES 2 POINTS APRES "\" FINAL
// SI PAS DE "\" AVANT LES POINTS, PAS BON
// RETOURNE NBR CARACTERES MIS DANS dst
// GetSubExtension("D:\File.txt.tmp", dst);  dst contiendra "txt"
DWORD __stdcall GetSubExtension(char *src, char *dst)
{
  char *d = dst, *p = 0; // d SERA POINTEUR DU DERNIER "\"
  while(*src) {
    if(*src == '\\') p = src;
    src++;
  }  // FINIT SUR TERMINATEUR NULL DE CHAINE
  if(!p) goto subEXIT;
  do {
    if(*--src == '.') goto okUN;
  } while(src > p);
  goto subEXIT;
okUN:
  do {
    if(*--src == '.') goto okDEUX;
  } while(src > p);
  goto subEXIT;
okDEUX:
  do { // DEBUTE SUR 1er POINT
    if(*++src == '.') break;
    *d++ = *src;
  } while(1);
subEXIT:
  *d = 0;
  return (d - dst);
}

void TestSubExt()
{
  DWORD n;
  char szdst[12], tot[12];
  n = GetSubExtension("d:\\tr.u.c\\readme.txt.m", szdst);
  if(n) {
    ultoa(n, tot, 10);
    MessageBox(0, szdst, tot, 0);
  }
}
study study study study study study
Revenir en haut Aller en bas
https://design.jeun.fr
 
Retrouver une sous extension avec C
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» decimal to binaire avec C
» Calculer le numero de semaine d'une date avec C

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
DESIGN STUDIO FORUM :: programmation :: C,C++-
Sauter vers:  
Ne ratez plus aucun deal !
Abonnez-vous pour recevoir par notification une sélection des meilleurs deals chaque jour.
IgnorerAutoriser