Chaine de caracteres

NeoUmbrella Messages postés 117 Date d'inscription vendredi 5 novembre 2004 Statut Membre Dernière intervention 15 janvier 2013 - 14 janv. 2005 à 19:18
cs_Tux Messages postés 6 Date d'inscription samedi 4 mai 2002 Statut Membre Dernière intervention 3 avril 2005 - 16 janv. 2005 à 10:09
Salut, je ne manie pas encore tres bien les chaines de caracteres et je veux
éviter d'utiliser les String.

J'aimerais savoir pourquoi j'ai une erreure quand je déclare un tableau comme
ceci :

TabScanText[20][300] = {""};

et que je veux remplir la chaine de la colonne 10

TabScanText[10] = dtexte;

(dtexte etant une variable 'char dtexte[300]')
J'aimerais savoir aussi comment dimensionner un tableau par variable
comme ceci (comme ReDim en vb) :

int a = 5;
char texte[a];

Merci
NeoUmbrella Corp.

4 réponses

cs_Joky Messages postés 1787 Date d'inscription lundi 22 novembre 2004 Statut Membre Dernière intervention 31 janvier 2009 2
14 janv. 2005 à 20:42
Qu'apelles-tu utiliser les strings ???
Les fonctions contenues dans le header string ???

Au pire pour ton problème,
Il existe une fonction copie : strcpy( Chaine qui recoit, chaine a placer )
donc :

#include
#include <string>


using namespace std;


int main()
{
char TabScanText[20][300] = {};

strcpy(TabScanText[10], "Texte a mettre");
cout << TabScanText[10];

system("pause");
}

Il t'affichera Texte a mettre.

void Aurevoir( void ); //Bonne journée
0
cs_Joky Messages postés 1787 Date d'inscription lundi 22 novembre 2004 Statut Membre Dernière intervention 31 janvier 2009 2
14 janv. 2005 à 20:44
Il existe également d'autre fonction pour les chaines de caractere :

strcat => concatène 2 chaines de caractères
strcmp => compare 2 chaines => renvoi 0 si elles valent la mm chose

Bref yen a beaucoup ;)


void Aurevoir( void ); //Bonne journée
0
Gendal67 Messages postés 627 Date d'inscription mercredi 16 juin 2004 Statut Membre Dernière intervention 24 juillet 2011 2
14 janv. 2005 à 22:10
oui, comme le dit Joky! Il y a aussi les dérivés Windows notés lstrcpy(), lstrcat() et lstrcmp() qui font la même chose (avec en +support UNICODE, non?) mais qui évite la déclaration de stdio.h ;)

Gendal67, Dev-C++ 4.9.9.1, J'adore cppfrance!! :-))
0
cs_Tux Messages postés 6 Date d'inscription samedi 4 mai 2002 Statut Membre Dernière intervention 3 avril 2005
16 janv. 2005 à 10:09
#include <stdio.h>



void main (void)

{

char TabScanText[20][300] = {""};

char dtexte[300]={"mettre du texte"};



for (int i=0;i<301;i++)

TabScanText[10][i]= dtexte[i];



printf("%s\n",TabScanText[10]);



}


pour dimensionner ton tableau par variable, il faut utiliser la fonction malloc()

si tu veux agrandir ton tableau alors que tu l'as déja créer.

exemple:

http://www.cppfrance.com/code.aspx?ID=10716
_ _
0