Я сейчас пытаюсь написать программу шифрования. Мне удалось заставить все работать хорошо, однако, как только я предложу пользователю ввести текст, который он хочет зашифровать, мой код не позволит ему вставить строку с пробелами. Я экспериментировал с функциями gets () и scanf ("% [^ \ n] s", ***), но это привело к худшим результатам.
Помощь будет высоко ценится, поскольку я не могу найти решение, которое работает для меня.
Ниже приведен раздел кода, с которым у меня возникли проблемы. Если это поможет, я могу опубликовать весь код. (Извините, если он отформатирован неправильно)
//selecting an menu option
DisplayDetails();
int OptionSelect = 5;
while (OptionSelect == 5) {
OptionSelect = get_menu_choice();
if (OptionSelect == 1) {
char OriginalText[126];
printf("Please enter string to encrypt: ");
scanf("%s", OriginalText);
//gets(OriginalText,126,stdin); - This did not work
//scanf ("%[^\n]s", OriginalText); - This did also not work
//Ask the user for the text they want to encrypt and store it in the "OriginalText" Variable
int offset = Get_offset();
Encryption(OriginalText, offset);
printf("\n");
OptionSelect = 5;