Bonjour,

Je me suis récemment lancé dans l'apprentissage du C. J'ai une question dont la réponse est sans doute très simple, mais je ne l'ai pas encore trouvée..

voici le code que j'essaie d’exécuter:

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
 
#include <windows.h>
#include <stdio.h>
#include <tchar.h>
 
TCHAR* GetText(){
	TCHAR text[200];
	_tcscpy(text, "Hello world");
	return text;
}
 
int main(void)
{
	TCHAR text[200];
	_tcscpy(text, "Hello world");
	_tprintf("%s\n", text); // >output : Hello world
 
	_tprintf("%s\n", GetText()); // >output : ╝¹2
 
    return 0;
}
Pourquoi est-ce que j'obtiens :

Hello world
╝¹2
En d'autres termes, pourquoi est-ce que j'obtiens n'importe quoi quand j'essaie d'imprimer le texte retourné par la fonction GetText() ?

Merci d'avance pour vos éclaircissements.

max