c语言如何输入限制长度的字符串?

比如说我要输入一个长度不大于5的字符串,当我输入6个字符时程序会自动显示5个字符并执行下面的语句,应该用什么输入函数?急求大神详解!!!

cdyzxy 的做法已基本够用了!

如果不行就用

//......
char s[6] = "";
for(int i=0;i<5;i++)
{
s[i] = getch();
if (s[i]=='\n')
{
break;
}
}
//.......

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-26
for ( i=0;i<5;i++ ) s[i]=getch(); //前5个字符输入
s[5]=0; //字符串结尾
getch(); // 第6个字符输入
...; //下面语句
第2个回答  2013-04-26
AutoPostBack="True"给文本框加上自动提交
protected void TextBox1_TextChanged(object sender, EventArgs e)
{
string aa = TextBox1.Text;
int count = aa.Length;
if (count > 5)
{
Response.Write(aa.Substring(0, 5).ToString());
}
else
{
Response.Write(aa);
}
}
第3个回答  2013-04-26
用while循环啊,五次就直接退出输入
第4个回答  2015-05-16
这个可以从缓冲区来做
有一个输入缓冲区,不管是gets或者for循环用scanf单个输入,输入后先进入缓冲区,在从缓冲区读入
你可以定义缓冲区的长度,让他不进入缓冲区,直接读入
具体做法我不知道,你百度一下吧
相似回答