main() { str buf[200]; memset(buf,0,sizeof(buf)); scanf("%s\n",buf); printf("mybuf is:%s\n",buf); } 如果输入:sdfsd aaa dddd 为什么只能打印出 sdfsd?
[code] scanf("%s",str); //输入命令 if(strcmp(str,"dir")==0) Showdir(); else if(strlen(str)==0) printf("hahaa"); [/code] 我的本意是接受一个字符串的输入,如果什么都没有输入,直接回车则 打印hahaha,但是好像不行,无论你回多少次车,程序一直等待你输入, 请教高手如何解决阿??谢谢!!
char a[10]; char b; scanf("%s",a); scanf("%c",&b); 和这段 char a[10]; char b; scanf("%s %c",a,&b); 有什么不同,第一段代码该怎么输入呢,谢谢
void main() { char s[] = "abc&:111&:20081018&:xxx"; char s1[100]; char s2[100]; char s3[100]; char s4[100]; memset( s1, 0x00, sizeof(s1) ); memset( s2, 0x00, sizeof(s1) ); memset( s3, 0x00, sizeof(s1) ); memset( s4, 0x00, sizeof(s1) ); sscanf( s, "%[^&:]&:%[^&:]&:%[^&:]&:%[^&:]", s1, s2, s3, s4 ); printf( "\n[%s]", s ); printf( "\n[%s]", s1 ); printf( "\n[%s]", s2 ); ...
前天晚上难得不加班,终于抽空把它从书上敲下来了。
大家需要的赶紧收藏一下。
[code]scanf 原型:
# include
本帖最后由 vistang 于 2011-12-10 20:54 编辑
#include
scanf("%d%d%d\n",&a,&b,&c)与scanf(""%d%d%d",&a,&b,&c")在程序运行中出现的情况
前者必须送入四个整数才能得到结果,然后后者只需三个实数即得结果,本人原意图是想求三个整数中最大值,先遇两种情况,不知何解。
代码如下:
#include