begin process at 2012 02 11 01:19:01
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Algorithme

 > 

Maths

 > 

affichage 3 premiers caractere


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

affichage 3 premiers caractere

dimanche 13 mai 2007 à 00:47:44 | affichage 3 premiers caractere

OTHKREEN

bonjour a tous,

je suis en train d'ecrire une petite fonction en C qui affiche les 3 premiers caracteres des chaine de caracteres (sans un utiliser des fonctions  de la bibliotheque string.h) contenu dans un tableau statique.

voici la déclaration:  char* jour[7].    ainsi,    jour[0]="lundi", jour[1]="mardi"...

au lieu d'afficher lundi, mardi, mercdri.... dimanche. je voudrais afficher  lun, mar....dim

mais j'arrive pas.  lorsque j'execute lpar exemple l'instruction printf("%s", jour[6]+3), il efface plutot les 3 premiers carcarteres pour m'affcicher "anche"

pouvez vous m'aider?

merci d'avance
dimanche 13 mai 2007 à 01:13:16 | Re : affichage 3 premiers caractere

maladedede

Membre Club

#include <stdio.h>
#include <windows.h>

char* jour[7];

int main(void)
{
       jour[0]="lundi";
       jour[1]="mardi";
       jour[2]="mercredi";
       jour[3]="jeudi";
       jour[4]="vendredi";
       jour[5]="samedi";
       jour[6]="dimance";
 
       printf("%c%c%c", jour[6][0], jour[6][1], jour[6][2]);
 
       Sleep(100000);
}


1/1MaLaDeDeDe 97one1/1 

dimanche 13 mai 2007 à 01:33:35 | Re : affichage 3 premiers caractere

maladedede

Membre Club
printf("%s", jour[6]+3), c'est comme si tu avais écrit printf("%s", jour[6][3]).

1/1MaLaDeDeDe 97one1/1 

dimanche 13 mai 2007 à 01:54:39 | Re : affichage 3 premiers caractere

NitRic

/* autre alternative */

#include

<stdio.h> /* printf() */

/* optionnel */
#define
DIMANCHE   0
#define LUNDI             1
#define MARDI           2
#define MERCREDI    3
#define JEUDI              4
#define VENDREDI     5
#define SAMEDI         6

/* pourrait être dynamique pour différentes langues */
static
struct
{
    const char * nomLong;
    const char * nomCourt;
}jours[
/* 0-6 */ ] =
    {
        {
"dimanche" , "dim" },
        {
"lundi" , "lun" },
        {
"mardi" , "mar" },
        {
"mercredi" , "mer" },
        {
"jeudi" , "jeu" },
        {
"vendredi" , "ven" },
        {
"samedi" , "sam" }
    };

/* pas vraiment utile puisqu'il y a toujours 7 jours dans une semaine  =_= */
#define
NOMBRE_DE_JOUR  ( sizeof (jours) / sizeof (jours[ 0 ]))

int
main()
{
    int i;

    for
(i = 0; i < NOMBRE_DE_JOUR; i++)
    {
        printf(
"%d) %s (%s)\n" , i, jours[ i ].nomLong, jours[ i ].nomCourt);
    }
    printf(
"\n%s\n" , jours[ MERCREDI ].nomLong);

    return
0;
}
je crois que c'est assez clair, pas la peine de commenter?

pour maladededadedido.... moi j'irais plutôt avec un « const char* jours[7] = {..., ..., ...}; » ou un « const char* jours[] = {...}; », etc. peu importe ... assignation dès la déclaration, et constant ...

printf("%s", jour[6]+3) << en fait ce que tu fais c'est que tu te déplaces de 3 casses vers la droite, donc tu sautes les trois premiers caractères, ton « jour[6] » est une chaine « char* »

char* chaine = "dimanche";
puts(chaine + 3); /* affiche: anche */

et c'est normal puisque tu demandes d'aller 3 casses vers la droite ... (une chaine de caractères est une « suite » de caractères)

chaine[0] = 'd'
chaine[1] = 'i'
chaine[2] = 'm'
chaine[3] = ???
...

*(chaine+3) == chaine[3] == 'a'

~(.:: NitRic ::.)~
dimanche 13 mai 2007 à 01:58:04 | Re : affichage 3 premiers caractere

maladedede

Membre Club
ok pas mal ton code :)

1/1MaLaDeDeDe 97one1/1 

dimanche 13 mai 2007 à 05:54:12 | Re : affichage 3 premiers caractere

OTHKREEN


merci pour le code, il m'a permis de comprendre quelques notions.


Cette discussion est classée dans : caractere, caracteres, jour, affichage, premiers


Répondre à ce message

Sujets en rapport avec ce message

chaine de caractere de taille variable [ par habibdu70 ] slt,savez vous comment modifier la taille d'une chaine de caractere ?par exemple si le nom de fichier fait 8 caracteres, je creai un fichier de 8 cara Rechercher une chaine de caractere dans un fichier [ par watch_3754 ] Voila mon probleme peut paraitre simple mais moi ca devient enervant.Je voudrai pouvoir rechercher dans un fichier (qui n'est pas en forme de tableau) generateur de mot [ par tezca_system ] Bonjour,Cela fait 3 jours que je travail sur un générateur de mot. C'est de niveau débutant.Concretement je souhaiterai que le programme genere tous l chaines de caracteres: caractere NULL [ par dletozeun ] bonjour,Je sais que lorsque l'on utilise la fonction: sprintf(), celle ci met automatiquement un caractere NULL a la fin du mot ecris dans la chaine.J UpdateData() [ par BrandeBouque ] Bonjour,existe t'il une autre methode qu'UpdateData() pour mettre à jour l'affichage ?Si j'ai tout compris, UpdateData() met à jour toutes les edit bo Affichage de caractere tres speciaux [ par Darats ] bonjours, j'utilise Visual C++ dans le cadre de mon ecole d'ingenieurj'ai besoin, dans une interface dos, d'afficher graphiquement un tableauj'arrive Lecture de chaine de caracteres [ par wislam2007 ] Salut je veux lire un n caractere dans une chaine de caractere : exemple chaine = "salut"; resultat attendu : "ut" comment faire? Merci A vs socket affichage de caractere [ par Shaihuld ] Bonjour,j'essais de faire communiquer 2 programes avec les sockets et send() et recv().ors d' une connection o server celui ci envoie une chaine hello fenetre d'affichage sous dos HELP! [ par LedPaL ] Slt,j'ai besoin de votre aide, je debute !savez vous quel fichier doi je inclure pour utiliser la commande: window(x1,y1,x2,y2); afin de redefinir une


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
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 : 0,952 sec (4)

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