在 c++ 中 scanf 函数之前 ~(波浪号)是什么意思
What does ~(tilde) means before scanf function in c++?
我找到了一个代码,它接受输入字符串并打印出来。
但我不知道扫描前面的波浪号是什么意思。
我发现波浪号可以用于析构函数或二进制否定,但它看起来不像两者。没有波浪号,代码就不起作用。
int main() {
char arr;
while (~scanf("%c", &arr)){
putchar(arr);
}
}
我发现波浪号可以用于析构函数或二进制否定,但它看起来不像两者。
它是应用于scanf()
返回值的按位 NOT 运算符,正如您在后面提到的。
没有波浪号,代码就不起作用。
正如@Mukul古普塔在他们的评论中解释的那样:
scanf
返回它成功扫描或EOF
的值数 如果它到达文件末尾。EOF
是一个宏,表示 负值。在大多数平台上,EOF
的价值是(int) -1
. 在这种情况下,取 -1 的补码,将使值为 0 并用于从循环中断。
相关文章:
- 这个语法std::class<>{}(arg1, arg2) 在C++中是什么意思?
- 标准 N3337 5.2.10 第 7 条中的C++"类型"是什么意思?
- "类模板示例<int>;"语句对 C++11 是什么意思?
- 线应该是什么意思
- "CID"在AT+HTTPPARA= "CID" ,1中是什么意思
- 表达式"b=(b-x)&x"是什么意思?
- 这个表达是什么意思?
- 此代码验证公式是什么意思?
- 跟踪日志中的T.11803()是什么意思?
- 这个额外的关键字在这个 c++ 类声明中是什么意思?
- * 和 ** 在 C++ 函数声明中是什么意思?
- _T("xyz")是什么意思?
- #define Dbg(fmt,..) (0) 是什么意思? 警告:表达式无效
- 这行代码到底是什么意思?
- 当我们说在执行程序时将操作系统的控制权传递给main()函数时,我们的意思是什么
- 这句话在c++中的意思是什么
- 这个typedef的意思是什么
- 这句话的意思是什么
- 意思是什么
- 这个句法的意思是什么?