gpt4 book ai didi

c - C中的文本编辑器选择带移位的文本

转载 作者:太空宇宙 更新时间:2023-11-04 02:32:56 25 4
gpt4 key购买 nike

我正在尝试用 C 语言设计文本编辑器。例如,我正在创建一个新的文本文件并从用户那里获取内容,直到按下

void Create() {
fp1 = fopen("temp.txt", "w");
printf("\n\tEnter the text and press '.' to save\n\n");
while (1) {
c = getchar();
fputc(c, fp1);
if (c == '.') {
fclose(fp1);
printf("\n\tEnter then new filename: ");
scanf("%s", fn);
fp1 = fopen("temp.txt", "r");
fp2 = fopen(fn, "w");
while (!feof(fp1)) {
c = getc(fp1);
putc(c, fp2);
}
fclose(fp2);
break;
}
}
}

到这里一切都很好,我的问题是我希望用户可以使用 shift 键选择文本并使用向上/向下箭头在文本中导航...

最佳答案

标准 C99 或 C11 (阅读 n1570 规范草案)不知道键盘或按钮。您可能需要一些与操作系统相关的库。

假设您的操作系统是 POSIX(例如 Linux),您想了解更多关于 terminals 的信息和 ttys(请阅读 tty demystified 页面);那么你应该使用像ncurses这样的库(但不要对终端 I/O 使用任何 <stdio.h> 函数)。

或者你想要一些 graphical user interface , 那么最好使用一些 graphics librarytoolkit (例如 GTKSDLQt 等....)。

制作文本编辑器需要花费数月(或数年)的时间。所以研究现有free software的源代码编辑的灵感。

关于c - C中的文本编辑器选择带移位的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40957172/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com