C语言 linux下删除最后一个字符

2025-03-12 18:21:06
推荐回答(4个)
回答1:

#include
int main(void)
{
printf("abcde");
printf("\b\b \b\b");/*让光标左移两位(删除两个字符),注意中间有两个空格*/
return 0;
}

******************************************************

如果有大量的对基于字符界面的GUI操作,建议使用cruses库进行编程,里面提供了丰富的基于文本的屏幕管理函数。

例如:

#include
#include

int main(void)
{

initscr();/*初始化curses*/
printw("abcde");/*输出*/
refresh();
move(0,2);/*移动光标位置*/
insch('C');/*在光标当前位置插入字符*/
refresh();
endwin();/*结束curses编程*/
return 0;
}

( gcc a.c -lcurses )

回答2:

#include
/*
copy
input
to
output;
1st
version
*/
main(){
int
c;
c
=
getchar();
while(c
!=
eof){
putchar(c);
c
=
getchar();
//这里一直在获取值。所以肯定不行。。。需要人工中断。ctrl+c
windows是这个,linux
不知道。
}
}

回答3:

\b就是后移一位的标志,左移两位就是
printf("\b\b \b\b");

回答4:

你可以采用数组或者指针撒,就可以达到要求了