Tag: whitespace

如何使用scanf输入空格?

使用以下代码: char *name = malloc(sizeof(char) + 256); printf(“What is your name? “); scanf(“%s”, name); printf(“Hello %s. Nice to meet you.\n”, name); 用户可以输入他们的名字但是当他们输入一个像Lucas Aardvark这样的空间的名字时, scanf()切断Lucas之后的所有内容。 如何使scanf()允许空格

在c中扫描空格/整行

所以,我知道之前已经问过这个问题,但我似乎无法做任何事情。 我现在拥有的是: #include struct ClothingCustomer{ char name[20]; int age; double inseam; }; struct ClothingCustomer createACustomer(){ struct ClothingCustomer aCustomer; printf(“Enter Customer Name: “); scanf(“%s”,aCustomer.name); printf(“Age: “); scanf(“%d”,&aCustomer.age); printf(“Inseam: “); scanf(“%lf”,&aCustomer.inseam); return aCustomer; }; int main(){ FILE* customersFile = fopen(“customers.txt”,”w”); for (int i = 0; i < 5; i++){ struct ClothingCustomer aCustomer = createACustomer(); fprintf(customersFile, "%s %d […]

扫描包含C中空格的字符串

在我的代码中: scanf(“%s”, &text); printf(“%s\n”, text); 输入: hi how are you 输出: hi 并不是 hi how are you 我该怎么办才能修好它?

如何在C中输入空格

我想从控制台获取字符数组,它还包括空格,我在C中知道的唯一方法是scanf,但是一旦用白色空格命中它就会错过停止输入。 我该做什么? 这就是我在做的事情。 char address[100]; scanf(“%s”, address);

如何在c中使用scanf读取空格?

问题:我需要能够识别连续出现两个空格的时间。 我读过以下问题: 如何从\ n分隔文件中读取字符串 如何用空格读取scanf 我知道scanf问题: http : //c-faq.com/stdio/scanfprobs.html 输入将采用以下格式: 1 5 3 2 4 6 2 1 9 0 两个空格表示需要处理下一组数据并与其自身进行比较。 线的长度未知,每组中的数字或整数是未知的。 两个空格是分隔下一个数据集的最多空格。 虽然我可以使用fgets和各种内置函数来解决这个问题,但我现在处理scanf问题可能会更容易。 但是,如果情况并非如此,使用fgets,strtok和atoi将完成大部分工作,但我仍需要连续识别两个空格。 下面将采用整数直到输入非整数。 while(scanf(“%d”,&x)== 1) 我需要做的是读取空格,如果有两个连续的空格,我将使程序与下一组数据做一些不同的事情。 一旦我得到一个白色空间,我不知道该怎么说: if((input ==“whitespace”)&&(previousInput ==“whitespace”)) 雅达亚达 else(input ==“whitespace”) 雅达亚达 其他 雅达亚达 感谢您的时间,感谢您的帮助。 获得的经验:尽管Jonathan Leffler在下面发布了scanf的解决方案,但解决方案对于getc来说更为直接(通过对内部scanf,正则表达式和char的更少了解)。 回想起正则表达式的更好的知识,scanf和char会使问题变得更容易,当然知道哪些函数是可用的,哪一个是从一开始就使用的最好的函数。