|
Page : 1 2 Page Précédente | |
Auteur | Sujet : string vers char* |
Publicité | Posté le 04-02-2009 à 18:20:51 |
Joel F Real men use unique_ptr | pr le premier, t'as le droit d'utiliser boost::tokenizer au lieu de cet antediluvien strtok. Message cité 1 fois Message édité par Joel F le 04-02-2009 à 18:58:07 |
erulio |
Message édité par erulio le 04-02-2009 à 19:00:47 |
Elmoricq Modérateur |
c_str() retourne un const char*. Et il est bien indiqué dans la documentation que la chaîne retournée utilise un espace alloué en interne et qu'elle ne devrait pas être modifiée. Du coup, si comme chez moi tu n'as pas accès à boost (), le plus simple est de créer ton propre "tokenizer", ce n'est pas très compliqué à faire, et tu n'as qu'à retourner le résultat dans un list<string>. Et si vraiment vraiment tu veux utiliser strtok() (là, t'insistes vraiment beaucoup vu la kyrielle de meilleures solutions proposées jusqu'ici), tu peux écrire : <ton code avec strtok()> delete[] buffer; Mais bon. Faut vraiment aimer strtok(), là. J'ai toujours trouvé que c'était la plus laide des fonctions C disponibles. Message cité 1 fois Message édité par Elmoricq le 04-02-2009 à 20:05:57 |
Joel F Real men use unique_ptr | en plus elle est pas reentrante
|
Un Programmeur |
|
Joel F Real men use unique_ptr |
Elmoricq Modérateur |
Publicité | Posté le 04-02-2009 à 22:05:23 |
Elmoricq Modérateur |
|
xphanoo |
Message cité 1 fois Message édité par xphanoo le 04-02-2009 à 22:13:03 |
Elmoricq Modérateur |
Tu sembles avoir un souci avec la documentation on dirait.
Message cité 1 fois Message édité par Elmoricq le 04-02-2009 à 22:18:22 |
Un Programmeur |
|
Joel F Real men use unique_ptr | Moi ce qui m'embete c'est :
|
Elmoricq Modérateur |
xphanoo |
|
Joel F Real men use unique_ptr | la gestion d'erreur est necessaire là ou le recouvrement d'un etat correct est complexe. |
jesus_christ votre nouveau dieu |
|
el muchacho Comfortably Numb |
Message édité par el muchacho le 08-02-2009 à 17:45:42 --------------- Les aéroports où il fait bon attendre, voila un topic qu'il est bien |
el muchacho Comfortably Numb | Et comme remplacement de strncpy() et strncat() Man page: http://www.openbsd.org/cgi-bin/man.cgi?query=strlcat Source code
Message édité par el muchacho le 08-02-2009 à 17:46:23 --------------- Les aéroports où il fait bon attendre, voila un topic qu'il est bien |
Elmoricq Modérateur | Ou alors on peut utiliser snprintf() Message cité 2 fois Message édité par Elmoricq le 08-02-2009 à 18:42:57 |
masklinn í dag viðrar vel til loftárása |
--------------- Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody |
Elmoricq Modérateur | Modifié mon post 3s avant ta réponse. J'ai comme qui dirait relu le post de much, je pensais que son code était des exemples d'utilisations d'utilisations de fonctions présentes sur un OS particulier, pas fait gaffe Message cité 1 fois Message édité par Elmoricq le 08-02-2009 à 18:45:06 |
masklinn í dag viðrar vel til loftárása |
--------------- Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody |
Elmoricq Modérateur | Quand tu te balades pas avec ta bibliothèque d'outils, ça dépanne bien. |
0x90 → |
--------------- Me: Django Localization, Yogo Puzzle, Chrome Grapher, C++ Signals, Brainf*ck. |
masklinn í dag viðrar vel til loftárása |
--------------- Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody |
0x90 → | Je pense qu'il faut se lever tôt pour sentir la différence (et en fait entre un strlcpy codé simplement comme ci-dessus et un strlcpy qui utilise le snprintf aux petits oignons du compilo je suis pas sûr que le premier gagne). Message édité par 0x90 le 08-02-2009 à 19:36:25 --------------- Me: Django Localization, Yogo Puzzle, Chrome Grapher, C++ Signals, Brainf*ck. |
el muchacho Comfortably Numb | Petit test: combien de fois avez-vous, dans votre codebase: memcpy(dst, src, sizeof(src); //correct, si sizeof(src) <= sizeof(dst) ? Là, comme ça, j'en compte 25 dans notre codebase rien que pour les strncpy. Je crois que c'est l'une des erreurs de codage les plus courantes. Message édité par el muchacho le 09-02-2009 à 21:57:20 --------------- Les aéroports où il fait bon attendre, voila un topic qu'il est bien |
Joel F Real men use unique_ptr | ici ? 0 Message édité par Joel F le 09-02-2009 à 16:40:11 |
masklinn í dag viðrar vel til loftárása |
--------------- Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody |
el muchacho Comfortably Numb |
--------------- Les aéroports où il fait bon attendre, voila un topic qu'il est bien |
masklinn í dag viðrar vel til loftárása |
Message édité par masklinn le 09-02-2009 à 17:13:30 --------------- Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody |
el muchacho Comfortably Numb | En fait, ces considérations d'usage de ces fonctions n'existent que sur le man d'OpenBSD, duquel dérive MacOS X, je le rappelle. Message cité 1 fois Message édité par el muchacho le 09-02-2009 à 17:13:41 --------------- Les aéroports où il fait bon attendre, voila un topic qu'il est bien |
Joel F Real men use unique_ptr |
masklinn í dag viðrar vel til loftárása |
--------------- Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody |
el muchacho Comfortably Numb |
--------------- Les aéroports où il fait bon attendre, voila un topic qu'il est bien |
Joel F Real men use unique_ptr |
|
Publicité | Posté le |
Page : 1 2 Page Précédente |