По сути, я пытаюсь создать программу, которая просто принимает ввод от пользователя, а затем печатает его, используя динамически распределенную память.Да, я знаю, как сделать это простым способом, но я пытаюсь разобраться в тонкостях управления памятью в C. Так что же не так с этим кодом?он работает без ошибок, но когда я ввожу строку в командную строку, он перестает работать и выдает исключение по шестнадцатеричному адресу.Заранее спасибо.
int main() {
char *input;
input = (char *)malloc(20 * sizeof(char));
puts("Enter the string you wish to display");
scanf_s("%s", input);
printf_s("%s", *input);
free(input);
return 0;
}