Bonsoir,

Je cherche depuis quelques heures une solutions à mon problème :

je souhaite déclarer dans une fonction main par exemple un char* que j'initialise a NULL, ensuite je souhaite le passer a une fonction par adresse (pointeur) qui me permettra de lui allouer dynamiquement de la mémoire avec le fameux malloc pour au final avoir un tableau de char dans mon main => une chaine de caractère.

J'ai donc essayé ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <stdio.h>
#include <stdlib.h>
#include <regex.h>
#include <string.h>
 
void fonction( char **p){
	*p = (char *) malloc (sizeof(char)*3);
 
	*(p[0])= 'T';
	*(p[1])= 'A';
 
 
}
 
int main( int argc, char* argv[]){
 
	int i;
	char* pointeur = NULL;
 
 
 
	fonction(&pointeur);
 
	for(i=0;i<3;i++){
	printf("%c\n",pointeur[i]);
	}
 
 
 
	return EXIT_SUCCESS;
 
}
Evidement si je souhaite faire ceci c'est pour résoudre un problème que je rencontre dans un programme plus compliqué et non pas pour vous embêter

Avis aux amateurs de C

Bonne soirée !