Прошло много времени с тех пор, как я сделал C ++ и пытаюсь освежить его, недавно я использовал python и java, поэтому был необходим обновленный указатель.
#include <iostream>
using namespace std;
int main()
{
char *s=new char;
cin >>s;
cout <<s<<endl;
delete s;
s=0;
return 0;
}
когда я пытаюсь это сделать, я понимаю, что у меня есть символ размером 1 байт, и когда я набираю что-то, оно сохраняется; и я могу распечатать его. но если я пробую большой ввод, он переполняется, я понимаю, что размер ограничен.
Теперь я попробовал это:
#include <iostream>
using namespace std;
int main()
{
char *s=new char;
cin >>*s;
cout <<s<<endl;
delete s;
s=0;
return 0;
}
хранится только первая буква того, что я печатал, i с первого по * s совпадает с s [0], но даже если это так, он должен хранить все в s [0].
Я не совсем уверен, как это понять.
Также я попробовал это:
char *s=new char [2];
cin>>s; // i enter lets say "hello"
cout<<s[3]; // this prints out "l";
что я не понимаю, так это когда я сказал новый символ [2], что я точно сделал, я выделил два символа?,