Conversion de std::string en char* ou char[]
Lorsqu'il est chargé de convertir un std::string en char ou char[], une idée fausse courante est que cela peut être fait directement. Cependant, cette hypothèse est incorrecte, car std::string et char sont des types de données distincts. Cette affectation directe se traduira par une erreur de compilation similaire à celle rencontrée : "erreur : impossible de convertir 'std::string' en 'char'...".
Pour réussir cette conversion, le c_str( ) la méthode std::string doit être utilisée. Cette méthode renvoie un pointeur vers une chaîne de style C terminée par un caractère nul, donnant accès à sa séquence de caractères sous-jacente. En utilisant c_str(), vous pouvez obtenir une représentation const char* de std::string.
Alternativement, si un char* non const est requis, la méthode data() peut être utilisée. Il fournit un pointeur vers le premier caractère de std::string.
En plus de ces techniques, il existe d'autres options viables :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!