Affichage chaine de caractere avec pointeur

Jules211 -  
 Jules211 - 2 juin 2017 à 09:52
Bonjour j'ai fais un programme qui passe ou du moins est sensé passer une chaine de caractère en majuscule, j'ai fais une fonction maj donc j'utilise les pointeur ^^
J'ai passer le tableau("chaine de caractère") dans ce pointeur et j'aimerais pouvoir l'afficher cette chaine ^^ n'étant pas chez moi et ayant pas mes cours et en cherchant sur internet je n'ai pas trouvé mon erreur... La syntaxe est elle la bonne ?

Voila merci d'avance et je m'excuse si ma question est vraiment simple ^^

printf("%s",*ptrT); // Doit afficher la chaine de caractere qui est pointer par ptrT
A voir également:

5 réponses

momoadmo Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour, peux tu nous montrer comment t'as fait les déclaration au début de ton programme,,Merci
0
YCN- Messages postés 116 Date d'inscription   Statut Membre Dernière intervention   12
 
Ce que tu fais est presque correct si tu utilises string.h, en fait tu vas devoir utiliser ptrT plutôt.

Par exemple :


#include <string.h>
#include <stdlib.h>
#include <stdio.h>

int main (void){
char * string;
int i;

string = malloc ( 16 * sizeof (char));

for (i=0;i<16;i++){
string[i] = 'a';
}

printf("%s \n",string);
}



Voilà voilà.
0
Jules211
 
Merci pour vos réponse voici mon programme..
J'avou ne jamais avoir utiliser la fonction string ^^



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




void maj(char *ptrT, int C)
{
/*affiche l'adresse du pointeur */
printf("%i \n",ptrT);
int i=0;

for(i=0;i<C;i++)
{
if(*ptrT>=97 && *ptrT<=122)
{ *ptrT=(*ptrT-32);
ptrT=&ptrT+i;
i++;
puts("o2");
};
};

printf(" voila i %d \n",i);
ptrT=(&ptrT-C);
/* puts("o3"); */

printf("%s",*ptrT); // la fameuse ligne
system("pause");
}

void main(void)
{
int tchaine=10;

char tab[tchaine];





puts("Rentrez la taille de la chaine de caractere");
scanf("%d",&tchaine);

printf("----Passage de chaine en majuscule--- \n");

puts("rentrez une chaine de caractere elle sera passe en majuscule ");
scanf("%s",&tab);


puts("Voici l'adresse du tableau ");

printf("%i \n",&tab[0]);






maj(&tab,tchaine);

system("pause");
}
0
YCN- Messages postés 116 Date d'inscription   Statut Membre Dernière intervention   12
 
met des balises code pour ton code, en cliquant sur la balises code après les icones pour mettre en gras italique et souligné.
ET RETIRE LE '*' à printf("%s",*ptrT);
--------> printf("%s",ptrT);
0
Jules211
 
Je suis désoler si le programme est mal mis ^^'
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Jules211
 
La cela devrait être bon ^^






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




void MAJ(char *ptrT,int C)
{
/*affiche l'adresse du pointeur */
printf("%i \n",ptrT);
int i=0;
for(i=0;i<C;i++)
{
if(*ptrT>=97 && *ptrT<=122)
{ *ptrT=(*ptrT-32);
ptrT=&ptrT+i;
i++;
puts("o2");
};
};

printf(" voila i %d \n",i);
ptrT=(&ptrT-C);
/* puts("o3"); */

printf("%s",ptrT);
system("pause");
}

void main(void)
{
int tchaine=10;
float largeur,longueur,resultP;
char tab[tchaine];





puts("Rentrez la taille de la chaine de caractere");
scanf("%d",&tchaine);

printf("----Passage de chaine en majuscule--- \n");

puts("rentrez une chaine de caractere elle sera passe en majuscule ");
scanf("%s",&tab);


puts("Voici l'adresse du tableau ");

printf("%i \n",&tab[0]);






MAJ(&tab,tchaine);

system("pause");
}





















0