begin process at 2012 05 30 18:26:09
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Windows

 > 

GUI

 > 

TCHAR & TEXT


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

TCHAR & TEXT

vendredi 18 août 2006 à 19:07:32 | TCHAR & TEXT

deck_bsd

Membre Club
Yop,


Bon j'ai pris une grande respiration et j'ai commencé la lecture (traduction) du livre de petzold et j'ai enfin trouvé des information sur TCHAR et TEXT que je croisai svt dans les source. Cependant cela reste un peut flou. En résumé , TCHAR et TEXT sont des macro qui gère automatiquement soit le ascii ou l'unicode c'est cela en gros ?

Merci d'avance.
vendredi 18 août 2006 à 19:21:29 | Re : TCHAR & TEXT

racpp

Administrateur CodeS-SourceS
Réponse acceptée !
Salut,
Oui c'est  ça. TCHAR devient char dans le mode ANSI et devient WCHAR en Unicode.
TEXT permet de considérer une chaine en ANSI ou Unicode selon le cas.

Le but de tout cela est de permettre d'utiliser le même code source pour les deux cas.

vendredi 18 août 2006 à 19:48:32 | Re : TCHAR & TEXT

deck_bsd

Membre Club
Merci racpp, hey tu es admin now ;)
vendredi 18 août 2006 à 20:11:56 | Re : TCHAR & TEXT

deck_bsd

Membre Club
Encore un question , si on fait :

printf("\n %s",TEXT("yop"));

Cela ne sert a rien car si c'est mode ansi , cava mais si c'est unicode , certe TEXT traite le text en unicode mais il ne s'affichera pas car c'est la fonction printf qui est employée et pas wprintf :s
vendredi 18 août 2006 à 20:46:45 | Re : TCHAR & TEXT

aardman

Membre Club
Salut,
printf c'est une fonction ansi, donc elle attend une chaine ansi.
wprintf c'est la version unicode de printf, et _tprintf c'est la macro qui sera remplacée par printf ou wprintf selon les #define.
vendredi 18 août 2006 à 20:51:56 | Re : TCHAR & TEXT

racpp

Administrateur CodeS-SourceS
Toutes les fonctions API Windows ayant comme paramètre des pointeurs sur chaines de caractères, existent en deux versions. Une pour ANSI et l'autre pour Unicode. Exemple:
MessageBox() -> MessageBoxA() et MessageBoxW(). Le compilateur choisit celle qui convient selon que le mode Unicode est défini ou non. D'autres librairies proposent une fonction distincte pour chaque mode. Un fichier header permet au compilateur de choisir la fonction convenable pour chaque mode. Malheureusement, ce n'est pas toujours le cas.

vendredi 18 août 2006 à 22:02:34 | Re : TCHAR & TEXT

maladedede

Membre Club

printf c'est un fonction OEM ascii étandu OEM et non ainsi je crois
parceque faite:
printf("é"); ca va vous afficher un "ù" !!!

et si vous faites:
char chaine[10]="é";
OemToChar(chaine, chaine);
printf("%s", chaine);
la on va voir le "é" dans la console dos


deck_bsd oui avec visual c++ quand tu choisi le mode unicode regarde dans l'appel du compilateur ca déclare la constante UNICODE comme cela: 
/D "_UNICODE"  c'est comme si tu metté avant l'header windows #define UNICODE et en fonctionde cela il va faire par exemple:
#ifdef UNICODE
#define DeleteFile DeleteFileW
#else
#define DeleteFile DeleteFileA


1/1MaLaDeDeDe 97one1/1 

samedi 19 août 2006 à 11:35:15 | Re : TCHAR & TEXT

deck_bsd

Membre Club
oui donc en clair j'avai vu juste . pour une total portabilité le bon code serai :

_tprintf("\n %s",TEXT("yop"));

:D
samedi 19 août 2006 à 16:58:42 | Re : TCHAR & TEXT

maladedede

Membre Club
J'était du meme avis que toi mais j'ai testé: _tprintf(TEXT("\n %s"),TEXT("yopé"));
ou _tprintf(L"\n %s"),L"yopé"); car c'est la meme chose... et la console m'a écrit un gros ù malgré le fait que l'on soir en unicode je comprend plus rien la.

sinon je l'ai appris cette semaine sur le forum ca TEXT("yop lol"); et L"yop lol"; c'est pareil pour qu'une chaine soir unicode.

1/1MaLaDeDeDe 97one1/1 



Cette discussion est classée dans : text, tchar


Répondre à ce message

Sujets en rapport avec ce message

ODBC Connect dialog: lacks text if api called from dll [ par mfritschi ] hi,i am writing an abstract data access framework. it enables us amongother things to access databases without being interested in theactual underlyin [VC++] Taille du text dans une application console [ par Cybmat ] SalutVoila je voudrai savoir comment on change la taille du text ecrit dans uneapplication console avec printf() .Merci d'avance Urgent problem de lecture de fichier [ par deamon ] J'ai besoin d'aide, je voudrais faire un héditeur hexadecimal en Visual C++. Le problem est que je n'arrive pas a afficher un fichier en héxa dans un multiple definition de fonctions ! [ par bidules ] bonjour,lorsque je compile j'ai plein d'erreur me disant qu'il ya des multiple definitions dans mes fichiers objets : ds tou les fichier .h il y a au property page avec les activex OCX [ par stef2000 ] je souhaite integrer une combo box dans ma property page. Je souhaite l'iniatialiser avec une liste de valeurs possible pour une propriété via OnInit COULEUR DE TEXT (SVP) [ par malito ] Je n'arrive pas malgres mes recherches a mettre du text ou l'arriere plan en couleur... textcolor(...); ne marche qu'en CComment fait Menu.... [ par erasor ] slt voila g prit une source d'un menu et je voudrai mettre une image en background o lieu d'une couleur ,voila la zone specifie: int x=cvar.menu_x, y= J'arrive pas HELP ME [ par g0belin ] system("net send "+Edit1->Text+" "+Edit2->Text);erreur:[C++ Erreur] Unit1.cpp(36): E2034 Impossible de convertir 'AnsiString' en 'const char *' c:\windows\escritorio\mes_progs\ddraw.o(.text+0x2be):ddraw.cpp: undefined reference to `timeGetTime@0' [ par felixboxer ] une erreur intervien lor de ma compilation , si qq peut maider ...c:\windows\escritorio\mes_progs\ddraw.o(.text+0x2be):ddraw.cpp: undefined reference Win sock sous dev c++ ? ? ?? ? [ par marelo87 ] salut,voila je programme sous dev c++ et lorsque je compile maus apli reseau voila les pb que j ai:C:\WINDOWS\TEMP\ccdGsagb.o(.text+0x12a):essai.c: un


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,108 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales