begin process at 2010 02 10 13:41:03
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Chaîne de caractères

 > FONCTION LEFT MID RIGHT DU BASIC EN C TURBO C++2 DEVC++4

FONCTION LEFT MID RIGHT DU BASIC EN C TURBO C++2 DEVC++4


 Information sur la source

Note :
8 / 10 - par 1 personne
8,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Chaîne de caractères Niveau :Débutant Date de création :23/03/2002 Date de mise à jour :31/12/2002 08:03:07 Vu :4 352

Auteur : cmarsc

Ecrire un message privé
Commentaire sur cette source (2)
Ajouter un commentaire et/ou une note

 Description

IL S'AGIT DES FONCTIONS DU LANGAGE BASIC MID$  LEFT$ ET RIGHT$ en langage C    

Source

  • /* PROGRAMME EN C SOUS DOS TURBO C++ DEVC++4
  • ecrit le 22-03-2002 par cmarsc
  • FONCTIONS DU BASIC LEFT MID RIGHT */
  • #include <conio.h> /* <conio.c> devc++4 */
  • #include <stdio.h>
  • #include <string.h> /* strlen strncpy */
  • char *C_LEFT(char *texte,int nbre_caracteres);
  • char *C_MID(char *texte,int depart, int fin);
  • char *C_RIGHT(char *texte,int nbre_caracteres);
  • int main(void) {
  • char *resultat;
  • char *texte = "VOUS POUVEZ ENTRER LE TEXTE QUE VOUS SOUHAITEZ DANS CETTE ZONE";
  • clrscr();
  • /* afficher le texte entier */
  • textcolor(WHITE);
  • gotoxy(1,1);
  • cprintf ("%s",texte);
  • textcolor(LIGHTRED);
  • /* afficher les 11 premieres lettres */
  • gotoxy(1,5);
  • resultat = C_LEFT(texte,11);
  • cprintf ("LEFT : %s",resultat);
  • textcolor(YELLOW);
  • gotoxy(1, 7);
  • /* afficher de la 11 eme lettre jusqu'au 46 eme caracteres */
  • resultat = C_MID(texte,11,46);
  • cprintf ("MID : %s",resultat);
  • textcolor(LIGHTCYAN);
  • gotoxy(1,9);
  • /* afficher les 15 derniers caracteres */
  • resultat = C_RIGHT(texte,15);
  • cprintf ("RIGHT : %s",resultat);
  • getch();
  • return 0;
  • } /* fin de main */
  • char *C_LEFT(char *texte, int nbre_caracteres) {
  • static char resultat[80];
  • if (nbre_caracteres > 0 && nbre_caracteres < strlen(texte) ) {
  • strncpy (resultat, texte, nbre_caracteres);
  • resultat[nbre_caracteres] = '\0';
  • }
  • return resultat ;
  • } /* fin de C_LEFT */
  • char *C_MID(char *texte, int depart, int fin) {
  • static char resultat[80];
  • if (depart > 0 && fin < strlen(texte) ) {
  • strncpy (resultat, texte + depart , fin - depart);
  • resultat[fin - depart] = '\0';
  • }
  • return resultat;
  • } /* fin de C_MID */
  • char *C_RIGHT(char *texte, int nbre_caracteres) {
  • static char resultat[80];
  • if (nbre_caracteres > 0 && nbre_caracteres < strlen(texte) ) {
  • strncpy(resultat,texte + (strlen(texte) - nbre_caracteres), nbre_caracteres);
  • resultat[nbre_caracteres] = '\0';
  • }
  • return resultat;
  • } /* fin de C_RIGHT */
/* PROGRAMME EN C SOUS DOS TURBO C++ DEVC++4
   ecrit le 22-03-2002 par cmarsc
   FONCTIONS DU BASIC LEFT MID RIGHT */
          
#include <conio.h>         /* <conio.c> devc++4 */
#include <stdio.h>
#include <string.h>        /* strlen strncpy */

char *C_LEFT(char *texte,int nbre_caracteres);
char *C_MID(char *texte,int depart, int fin);
char *C_RIGHT(char *texte,int nbre_caracteres);


int main(void) {
    
    char *resultat;
char *texte = "VOUS POUVEZ ENTRER LE TEXTE QUE VOUS SOUHAITEZ DANS CETTE ZONE";

	clrscr();

    /* afficher le texte entier */
    textcolor(WHITE);
   	gotoxy(1,1);
    cprintf ("%s",texte);      

	textcolor(LIGHTRED);
	/* afficher les 11 premieres lettres */
   	gotoxy(1,5);
	resultat = C_LEFT(texte,11);
    cprintf ("LEFT : %s",resultat);      

    textcolor(YELLOW);
	gotoxy(1, 7);
	/* afficher de la 11 eme lettre jusqu'au 46 eme caracteres  */
	resultat = C_MID(texte,11,46);
    cprintf ("MID : %s",resultat);      

    textcolor(LIGHTCYAN);
	gotoxy(1,9);
	/* afficher les 15 derniers caracteres */
	resultat = C_RIGHT(texte,15);
    cprintf ("RIGHT : %s",resultat);      

    getch();
return 0;
} /* fin de main */


char *C_LEFT(char *texte, int nbre_caracteres) {

	 static char resultat[80];
  
if (nbre_caracteres > 0 && nbre_caracteres < strlen(texte) ) {

     strncpy (resultat, texte, nbre_caracteres); 
     resultat[nbre_caracteres] = '\0';
}

return resultat ;
} /* fin de C_LEFT */


char *C_MID(char *texte, int depart, int fin) {
	
	static char resultat[80];

if (depart > 0 && fin < strlen(texte) ) {

     strncpy (resultat, texte + depart , fin - depart); 
	 resultat[fin - depart] = '\0';
}

return resultat;
} /* fin de C_MID */

char *C_RIGHT(char *texte, int nbre_caracteres) {
	 static char resultat[80];

if (nbre_caracteres > 0 && nbre_caracteres < strlen(texte) ) {
strncpy(resultat,texte + (strlen(texte) - nbre_caracteres), nbre_caracteres);
	resultat[nbre_caracteres] = '\0';
}
      
return resultat;
} /* fin de C_RIGHT */

 Conclusion

//  PROGRAMME EN C SOUS DOS TURBO C++2 DEVC++4
//  ecrit le 22-03-2002 par cmarsc      


 Sources du même auteur

Source avec Zip SIMULATION D'ECRAN BOURSIER TURBOC++ MODE GRAPHIQUE
Source avec Zip TESTE DE DACTYLO TURBO C++2 DEVC++4
Source avec Zip CADRE DEFILANT : DEVC++4 TURBO C++2 SOUS DOS
Source avec Zip CRYPTAGE-DECRYPTAGE : TURBO C++ 2 DEVC++ 4 EN LANGAGE C
Source avec Zip EFFETS DE TEXTES MULTIPLES 2 MODE GRAPHIQUE TURBO C++

 Sources de la même categorie

Source avec Zip RECHERCHE D'ANNAGRAMMES par Torin
GESTION DE CHAINE DE CARACTÉRE EN C++ AVEC NSTRING par xmustapha
Source avec Zip COMMENTER CODE C <=> ASM (WIN64) par BruNews
Source avec Zip GSTRING - GESTION DES CHAINES DE CARACTÈRES par Neokript
Source avec Zip ANALYSEUR SYNTAXIQUEV(0.1) par kohan95

Commentaires et avis

Commentaire de beeline le 11/07/2004 14:54:28

une petite precision:
La fonction mid en vb index a 1: je m'explique:
si on veut le premier caractére ou a:  mid(str,1,1)
alors que sur ta fonction: C_MID(str,1,1) donne le deuxième !
faut juste le preciser.

Commentaire de cmarsc le 15/07/2004 08:29:59

salut,
ce que tu dis es correct, en C/C++ l'indice commence à 0 et non a 1 pour le basic (cela dépend du langage).

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,139 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales