siemka chciałbym zrobić takie zadanie, jednak za pomocą inteligentnych wskaźników unique_ptr:
Napisz funkcję, która w argumencie będzie miała obiekt string i zwróci zwykły wskaźnik na
nową/dynamiczną tablicę char o właściwym, najmniejszym wymiarze do przechowania ciągu
znaków z argumentu. Zadbaj o usunięcie rezerwacji we właściwym momencie.
Prosiłbym o wskazanie mojego błędy...nie wiem co robie źle jednak kompilator wywala błąd przy funkcji strcpy(nowy, napis.c_str());
oto mój kod:
#include <iostream>
#include <string>
#include <string.h>
#include<cstring>
#include<memory>
using namespace std;
unique_ptr<char> zamiana(string napis)
{
unique_ptr<char>nowy(new char[napis.length()]);
strcpy(nowy, napis.c_str());
return nowy;
}
int main()
{
string napis = "Test";
unique_ptr<char> inteligent_char = zamiana(napis);
cout<<*inteligent_char;
return 0;
}