Je débute en C++ et j'ai un petit problême avec mon code. J'ai créé une fonction qui prend en argument une chaine et un entier et qui retourne les n premiers caractères de la chaine entrée.
char *str_left(char *i_str, int i_len)
{
if(i_len > strlen(i_str)) return NULL;
char *r_str = new char[i_len];
int pos = 0;
do
{
r_str[pos] = i_str[pos];
pos++;
}while(pos < i_len);
return r_str;
}
par exemple :
char *commentaire = str_left("/* commentaire */", 2);
std::cout << commentaire << std::endl;
delete commentaire;
Ce code devrais me renvoyer "/*" a l'écran mais au lieu de cela, il me renvoi "/*=" !!
Pourquoi

s.v.p. aidez moi!!