我最近在做课程设计,关于信息管理的。我定义了一个结构体,里面包含char[]和int、long等类型。
输入函数里我不想用scanf每一行只输入一个数据,那样即麻烦又不美观。
我想问问有没有什么好的办法能在scanf("%s %d",char,int)时使输入时能用空格将两个数据分别赋给char和int,而不是全部给char了。
我刚试过不行
追答对于scanf()函数来说,空格是常用的数据分隔符,scanf()函数之所以不能读入一行文本的原因也在与此,要想读入一行文本串,通常都用gets()函数。在多个平台上测试都是这样,我不知道你说的不行是指哪儿不行,对于scanf("%s%d",s,&num);,是s没有得到需要的串,还是num没有得到需要的值,还是都没有得到呢?
我知道,现在就在写这个输入函数,卡在scanf这里了
追答不知道是不是我理解错了,直接用if语句判断输入字符的ASSIC码不就行了吗?判断是否属于0~9之间的assic码。