Я очень новичок в C++. Я родом из земли java, поэтому система ввода/вывода меня немного сбивает с толку, поэтому извините, если это глупый вопрос.Нарушение прав доступа при попытке чтения и записи строки?
Я пытаюсь объявить строку, сохранить в нее некоторый ввод в консоль, а затем распечатать строку.
int _tmain(int argc, _TCHAR* argv[])
{
char* pizza = "";
std::cin >> pizza;
std::cout << pizza;
return 0;
}
Я получаю исключение нарушения доступа, из-за чего я думаю, что у меня есть неверный адрес памяти где-то.
Почему я не могу использовать char *? – grey00
@ user3238865: Вы можете, вы просто должны знать, как правильно использовать его. т. е. вам необходимо правильно распределить память и указать символ «char *» в эту память. И вам нужно быть осторожным, чтобы не переполнять память, которую вы выделили, и целый ряд других проблем. Но, помимо опыта программирования на языке, вы теряете время, потому что все эти проблемы уже решены, а решения инкапсулированы в класс 'std :: string', который был широко протестирован. –