Вот мой код:
std::string resolve_email(int *email){
char* c = new char[email.length() + 1];//error: request for member 'length' in 'email', which is of non-class type 'int*'
for(int i = 0; i < email.length(); i++){
c[i] = email[i];//error: request for member 'length' in 'email', which is of non-class type 'int*'
}
return std::string(c);
}
Я получаю при компиляции ошибки (добавил в код как комментарий). Что здесь не так?
С какого языка перебрались на C++?
Указатель ничего не знает о том, на сколько элементов он указывает, так что длину массива надо передавать вместе с указателем.
Но что вы, собственно, хотите сделать? Мне вообще непонятна цель ваших телодвижений: создать массив char, обрубить int до char и запихать это зачем-то в строку, еще и вызвав утечку памяти.
Изложите свою цель, потому что можно только догадываться, что вы хотите... И делаете это ужасно неверно.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей