Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- enum Types{S = 0, I, F};
- char* strEdit(UINT types)
- {
- system("cls");
- Types t = static_cast<Types>(types);
- HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
- COORD pos;
- pos.Y = 1;
- pos.X = 0;
- char* cloneStr = NULL;
- char* str = NULL;
- printf("ΠΠ²ΠΎΠ΄:\n");
- while(true)
- {
- int symbol = _getch();
- cloneStr = new char[pos.X + 1];
- for (int i = 0; i < pos.X; i++)
- if (str[i] != '\0')
- cloneStr[i] = str[i];
- str = new char[pos.X + 1];
- for (int i = 0; i < pos.X; i++)
- str[i] = cloneStr[i];
- delete[] cloneStr;
- if(t == 0)
- {
- if (((symbol >= 97 && symbol <= 122) || (symbol >= 65 && symbol <= 90)) && pos.X < 50)
- {
- str[pos.X] = symbol;
- printf("%c", str[pos.X]);
- pos.X++;
- }
- if(symbol == 32 && pos.X < 50)
- {
- str[pos.X] = ' ';
- printf("%c", ' ');
- pos.X++;
- }
- }
- else
- {
- if(t == 1)
- {
- if (symbol >= 48 && symbol <= 58 && pos.X < 50)
- {
- str[pos.X] = symbol;
- printf("%c", str[pos.X]);
- pos.X++;
- }
- }
- else
- {
- if(t == 2)
- {
- if (((symbol >= 48 && symbol <= 58) || (symbol == 46)) && pos.X < 50)
- {
- str[pos.X] = symbol;
- printf("%c", str[pos.X]);
- pos.X++;
- }
- }
- }
- }
- if (symbol == 8 && pos.X > 0)
- {
- str[pos.X] = ' ';
- pos.X--;
- SetConsoleCursorPosition(hConsole, pos);
- printf("%s", " ");
- }
- SetConsoleCursorPosition(hConsole, pos);
- if (symbol == 13)
- {
- str[pos.X] = '\0';
- break;
- }
- }
- delete[] cloneStr;
- return str;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement