[C] Méthode (Fonction, procédure) interne, locale [Résolu]

Signaler
Messages postés
344
Date d'inscription
jeudi 1 mai 2003
Statut
Membre
Dernière intervention
4 avril 2011
-
Messages postés
344
Date d'inscription
jeudi 1 mai 2003
Statut
Membre
Dernière intervention
4 avril 2011
-
Bonjour @ tous,

J'aimerais faire un fonction locale (c'est à dire: Dans ma fonction)
Mais ça pête.

int SaisiePasse(char matricule[lMaxCode]) {
char touche;
int i,j,k,fd,pos,sortir=0,matOk;
char str[lMaxFic],passe[lMaxCode],service[lMaxCode];
int lgScr=20; // Longueur de la zone de saisie
int getStr(int debut,char fin,,char str[lMaxCode]) { // Fonction Locale
for (int k=debut;k<debut+2;k++) {
if (str[k]==';')
break;
}
return k;
}
}

De plus, est-t-il possible de faire des fonction qui retournent des tableaux de char ?

David, à VERSAILLES

3 réponses

Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
Il n'existe pas de fonctions locales en C/C++. Si tu veux faire de l'encapsulation, utilise les classes de C++.

Il est possible de faire des fonctions qui retournent des tableau de char, qu'on peut confondre avec des pointeurs de char.
Messages postés
96
Date d'inscription
vendredi 1 avril 2005
Statut
Membre
Dernière intervention
26 juillet 2007

Salut,



J'aimerais bien t'aider mais je ne comprends pas ton code.

Tu fais une fonction mais tu ne l'appelles jamais. A quoi ça sert ?

Quel est le but de ton bout de code ?



En plus je ne suis pas sûr que cela soit possible en C. Je crois que le langage Pascal le supporte mais pas le C.



Idem, peux-tu être plus clair pour la deuxième question ?

Ton tableau, tu le passes en paramètre de ta fonction ou bien le
tableau et créé dans ta fonction et tu veux le retourner à la fonction
appelante ?



A+
Messages postés
344
Date d'inscription
jeudi 1 mai 2003
Statut
Membre
Dernière intervention
4 avril 2011
1
Bonjour Vecchio et Shirby,

ui, ce code n'est pas complet, c juste pour faire voir ce que je voulais.

Pour le tableau, je passait le pointeur dans la fonction (j'ai oublié le *) pour parrer à ce pb mais si vous me dites que ce n'est pas possible de retourner directement une string, c pas grave, Merci pour ces deux réponses négatives, hi !

David, à VERSAILLES