- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
下面是我使用 a 存储用户的 a-z 字母表,然后在屏幕上重现相同内容的程序。
#include <stdio.h>
#include <string.h>
int main()
{
int const size = 26;
int index;
char arr[size]; // = "abcdefghijklmnopqrstuvwxyz";
printf("\nEnter the lowercase letters\n");
for (index = 0; index < size; index++){
scanf_s("%c", &arr[index]);
}
for (index = 0; index < size; index++){
printf("\n%c\n", arr[index]);
}
return 0;
}
虽然,对我来说直接存储它然后重现它更容易,但是每当我开始运行该程序时。它接受直到字母“m”,然后退出。我一直在试图找出错误,但找不到错误。我也在使用 Visual Studio 2013 Ultimate。另外,我正在一行又一行地输入输入。
最佳答案
这是因为 "%c"
说明符捕获了上一次调用留下的 '\n'
字符。
您可以通过使格式字符串忽略该字符来解决该问题。这是通过在 %c
之前添加显式空格来完成的,如下所示
scanf(" %c", &arr[index]);
但在这种情况下,如果您简单地使用 getchar()
或 fgetc()
,效果会更好,如下所示
size_t size = 26;
int chr;
size_t index;
char arr[size] = {0};
chr = getchar();
for (index = 0 ; ((index < size) && (chr != EOF)) ; ++index)
{
arr[index] = chr;
chr = getchar();
}
for (index = 0 ; index < size ; ++index)
printf("%c\n", arr[index]);
而且,显然您和其他人一样以错误的方式使用 scanf()
,即使在这种情况下不太可能出现问题,您也不会检查返回值scanf()
的,这是一个潜在的问题,因为如果输入 Ctrl+D 或“Ctrl+Z (Windows OS)”,则arr[index]
将未初始化。
关于c - 如何将字符一个接一个地存储在数组中,直到用户输入字符以外的输入,然后在屏幕上重现相同的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28916391/
我已经坚持了好几天了……很抱歉遇到这样的问题,但是我只是F#本身的初学者。由于关于类型提供程序的讨论很多,所以我决定建立一个类型提供程序并撰写一篇有关它的论文。当我开始时,我不知道什么是类型提供程序。
我正在开发LAN项目唤醒功能,但是我想控制局域网中计算机是否打开。但是我不想使用ICMP或WMI(我的网络上有DC)。那么,对于此问题,是否还有其他选择,例如“套接字连接”,请检查特定端口是否正在使用
我们有一个旧的VB6应用程序,该应用程序使用Crystal Reports XI生成打印报告。我们已经通过经验发现,如果Crystal Reports打印引擎选择了错误版本的 usp10.dll (W
我正在尝试获取有效的 Android 权限列表。我知道 http://developer.android.com/reference/android/Manifest.permission.html
嗨,我是 nginx 的新手,我试图在我的服务器(运行 Ubuntu 4)上设置它,它已经运行了 apache。 所以在我 apt-get install 它之后,我尝试启动 nginx。然后我收到这
如何在VB 6中检查对象的类型-除了'TypeName'之外,是否还有其他方法,因为无法通过'TypeName'进行检查,我希望使用类似QuichWatch窗口的方法。 最佳答案 对于对象变量,请使用
我的 JSP 应用程序中有一个错误。发布后我的 session 被清除: YAHOO.util.Connect.asyncRequest('POST', Url, callback, post
我是一名优秀的程序员,十分优秀!