IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

concaténation et incrémentation


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Femme Profil pro
    université
    Inscrit en
    Mars 2017
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : université

    Informations forums :
    Inscription : Mars 2017
    Messages : 48
    Par défaut concaténation et incrémentation
    Bonjour ,
    j'ai une chaine de caractère comme ceci : "OCR\\Image 01.bmp" qui est utiliser dans une fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        for ( i = 0; i < NUM_OCR_IMAGES; i++ ) 
    		ocrImagesArray[i] = imaqCreateImage (IMAQ_IMAGE_U8, 10);
     imaqReadFile( ocrImagesArray[0], "OCR\\Image 00.bmp", NULL, NULL);
    qui permet de charger une image (ex : Image 01) dans cette chaine je voudrais que "Image 01" ne soit pas fix mais qui varie dans une boucle qui permet de charger plusieurs images avec la boucle ex
    Image 01 Image 02 Image 03...; pour cela je voudrais utiliser la fonction qui permet la concatination:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    char txt="OCR\\Image" // declarer comme chaine de caractere 
    int Num[]=00; ///  déclarer comme tableau d'entier a incrémenter pour avoir Image 00 puiS 01 02 ......
    Num= Num+1; 
    char txt2=".bmp" //// CHAINE DE CARA 2
    tab= strcat(txt,Num,txt2);/// concatiner les 3 elements
    pour avoir
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    imaqReadFile( ocrImagesArray[0], tab, NULL, NULL);//// permer d'incrementer toute les image sans avoir a ecrire toute les images
    est t'il donc possible de concatiner char avec int qui s'incremente puis char ????
    merci

  2. #2
    Membre très actif
    Avatar de sambia39
    Homme Profil pro
    No Comment
    Inscrit en
    Mai 2010
    Messages
    548
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : No Comment
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2010
    Messages : 548
    Par défaut
    Bonjour,
    On pourrait bien vous aider si vous indenté votre code source sans trop le charger de commentaire qui fait également office de questions. Et sans vouloir être incommodant, on dit concaténé/concaténation de chaîne de caractère et non-concatiner / concatination.
    Voici un lien pour plus d’informations.
    à bientôt

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 147
    Billets dans le blog
    4
    Par défaut
    Une chaîne de caractères c'est char*
    int Num[]=00; est un tableau (vide ? pointant sur l'élément null ?) (ça compile ?)
    Num= Num+1; est le décallage du tableau

    Je ne parviens pas à trouver la doc de imaqReadFile donc je ne peux pas dire si ton idée de imaqReadFile( ocrImagesArray[0], tab, NULL, NULL);//// permer d'incrementer toute les image sans avoir a ecrire toute les images est possible.

    Convertir un entier en chaîne se fait via itoa (dans stdlib.h)
    concaténer des chaînes (et uniquement des chaînes) comme tu l'as déjà trouvé c'est strcat (dans string.h)
    Formatter une chaîne est possible via sprintf (dans stdio.h)
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  4. #4
    Membre actif
    Femme Profil pro
    université
    Inscrit en
    Mars 2017
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : université

    Informations forums :
    Inscription : Mars 2017
    Messages : 48
    Par défaut
    merci pour votre retour,
    imaqReadFile est une fonction que j'utilise dans un logiciel labwindowscvi compilateur C, pour la question si l'idée fonctionne j'ai essayer ceci et ça marche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    	char tab[]=  "OCR\\Image 00.bmp";
    	imaqReadFile( ocrImagesArray[0], tab, NULL, NULL);
    juste en remplaçant dans la fonction le tableau tab de caractère pour une première étape après j'ai essayer d'utiliser la fonction pour concaténer entre les chaines de caractère mais le soucis c'est que le numéro d'image doit s’incrémenter pour cela donc ça devrai être un tableau d'entier et pas un tableau de char c'est ce qui me bloc , je vais regarder la documentation envoyer merci à vous
    Cdlt;

  5. #5
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 833
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 833
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Citation Envoyé par ghozlane19 Voir le message
    mais le soucis c'est que le numéro d'image doit s’incrémenter pour cela donc ça devrai être un tableau d'entier et pas un tableau de char
    Non, incrémenter un nombre signifie qu'on travaille sur un simple nombre, pas un tableau de nombres. Si je veux afficher de 1 à 1000 il me suffit d'un int, pas besoin d'un tableau d'ints. Si en revanche je veux travailler sur plusieurs nombres en parallèle alors oui il faudra un tableau d'ints pour pouvoir travailler sur le second sans perdre le premier et inversement mais ce n'est pas le cas ici.

    Ici ton but est d'insérer le nombre calculé (donc encore une fois un seul int) dans un nom ce qui nécessitera donc bien un tableau de caractères puisqu'un nom (une chaine) ne peut se stocker en C que dans un tableau de caractères. Une fois le nom créé, l'int est devenu inutile et pourra alors servir pour le nom suivant.

    Code c : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    char nom[30];
    unsigned short i;
     
    for (i=0; i < 1000; i++) {
    	sprintf(nom, "OCR\\Image %02hu.bmp", i);
    	printf("nom=[%s]\n", nom);
    }
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  6. #6
    Membre actif
    Femme Profil pro
    université
    Inscrit en
    Mars 2017
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : université

    Informations forums :
    Inscription : Mars 2017
    Messages : 48
    Par défaut
    Sve@r , Bonjour
    Merci pour votre aide ,
    bonne journée

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. auto-increment
    Par fafet dans le forum Requêtes
    Réponses: 2
    Dernier message: 11/07/2003, 15h05
  2. [MYSQL] valeur auto-increment
    Par alex1er dans le forum Requêtes
    Réponses: 5
    Dernier message: 10/07/2003, 12h26
  3. Auto Increment
    Par Guizz dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 23/06/2003, 18h36
  4. Nom du champs auto-incrementé
    Par norroy dans le forum Requêtes
    Réponses: 2
    Dernier message: 17/06/2003, 18h30
  5. Pb d'auto-incrément sur une table v7
    Par Nivux dans le forum Paradox
    Réponses: 9
    Dernier message: 26/12/2002, 12h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo