C语言按回车录入字符串后不换行,能做到吗?

C语言按回车录入字符串后不换行,能做到吗?
我用的是gets_s,输入字符串后按回车,录入该字符串,同时光标跳到下一行。

那么问题是,如果我输入的是空字符串直接敲回车,那么虽然返回的的确是空字符串,但是光标就会跳到下一行,这行就空掉了。

用逐个录入逐个输出的方法,如果一次输入的字符串过长,达到了两行,那么光标在第二行的时候用退格键无法退到第一行。

用scanf的话,第一不能有空格,第二也存在换行的问题。

求高人解决!
第一,编程环境是VC2008(我用的是gets_s不是gets就是这个原因)
第二,要支持退格,下一行能退到上一行去
按回车后不换行可以用conio库皮帆函数实现,示例:

//---------------------------------------------------------------------------

#include 晌绝
#include 宴握姿

int main(void)
{
char c;
char a[100]={0};
int i;

for (i = 0; i<100;) {
c=getch();
if (c!='\r') {
putch(c);
a[i++]=c;

}
else {
a[0]=0;
i=0;
clrscr();
cputs(a);

}
}

return 0;
}
//---------------------------------------------------------------------------
给你一函数,可以控制光标移动的位置的

void gotoxy(int x,int y)
{
COORD coord;
coord.X=x;
coord.Y=y;
SetConsoleCursorPosition( GetStdHandle( STD_OUTPUT_HANDLE ), coord );
}
其羡戚他你自己搞闹旦定液派扰吧
没有办法的

就算真的有这个方式他的作用也太小了呀
← 上一篇: 下一篇: →