我想读几个数字stdin,每行一个数字.我想忽略任何行上的数字和字符串之后的任何尾随文本.为了实现这一点,我使用了以下代码:
while (getline(cin, str)) {
num = strtol(str.c_str(), NULL, 0);
if (errno != ERANGE && errno != EINVAL) {
arr[i++] = num;
req_pages_size++;
cout << arr[i-1] << "\t";
}
str.clear();
}
Run Code Online (Sandbox Code Playgroud)
ISSUE:转换失败后,errno无法更新成功转换案例的错误值.对于之前未成功的通话,它的价值保持不变.
请让我知道如何处理这个问题?
在我的应用程序中,有许多观察者和一个主题,但我想向特定观察者发送关于变量的一些变化的通知.
我很困惑,我也在互联网上搜索它..但是没有太多.
如果早些时候被问过我很抱歉...现在我无法找到一些简明的答案.
我是scheme的新手,我正在尝试创建嵌套循环,其中C代码将如下所示: -
for(i = -1, a = 0; i > -5, a < 5; i--, a++)
{
for(j = i, b = 0; j < (abs(i)), b < 5; j++, b++)
{
<do something>
}
}
Run Code Online (Sandbox Code Playgroud)
我在计划中用这个概念尝试过类似的东西: -
(let oloop( (i -1) (a 0))
(display i)(display a) (newline)
(if (and (> i -5) (< a 5)) (oloop((- i 1) (+ a 1))))))
Run Code Online (Sandbox Code Playgroud)
我无法嵌套所有四个循环加上面的代码不起作用.
请建议.