有时我们的程序需要可变数量的输入。在这个程序中,我们将看到如何使用cin获取可变数量的输入。一个简单的解决方案是运行一个循环,当按下某个特定值时,它就会停止。另一个想法是使用cin >> input。当值为非数字时,这将返回false。示例#include using namespace std; main() { int input; int n = 0; cout > input) n++; cout
在本节中,我们将了解C++中的lrint()和llring()。首先让我们讨论lrint()。lrint()函数用于使用当前舍入模式将参数中给定的分数值舍入到整数值。当前模式是通过使用fesetround()确定的。>=lrint()函数以double或float或integer值为输入参数,并通过将分数部分舍入到整数部分返回long int值。示例#include #include #include using namespace std; main() { int x = 40; long int res; fesetround(FE_DOWNWARD); // 设置… 阅读更多
这里我们将看到什么是构造函数委托?当一个构造函数调用同一个类的另一个构造函数时,这就被称为构造函数委托。此功能从C++11开始提供。让我们看下面的程序,并尝试分析这段代码中的困难之处。示例#include using namespace std; class MyClass { int a, b, c; public: MyClass(){ a = b = c = 0; } MyClass(int c) { // a和b的初始化是多余的,这里只需要c的初始化 a = 0; b = 0; this->c = c; } void display(){ cout
在某些情况下,我们需要在不同的问题中使用特定数据类型的最小值或最大值。记住这个值非常困难。为此,C++有一些宏,用于表示某些数据类型的最小和最大范围。有些数据类型没有宏,因为它们是无符号的,所以最小值为0。数据类型范围最小值宏最大值宏char-128到+127CHAR_MINCHAR_MAXshort char-128到+127SCHAR_MINSCHAR_MAXunsigned char0到255-----UCHAR_MAXshort int-32768到+32767SHRT_MINSHRT_MAXunsigned short int0到65535-----USHRT_MAXint-2147483648到+2147483647INT_MININT_MAXunsigned int0到4294967295-----INT_MAXlong int-2147483648到+2147483647LONG_MINLONG_MAXunsigned long int0到18446744073709551615-----ULONG_MAXlong long int-9223372036854775808… 阅读更多
信号是由操作系统传递给进程的中断,这些中断可能过早地终止程序。您可以通过在UNIX、LINUX、Mac OS X或Windows系统上按Ctrl+C来生成中断。有一些信号是程序无法捕获的,但以下列出了您可以在程序中捕获并根据信号采取适当操作的信号。这些信号在C++头文件中定义信号描述SIGABRT程序的异常终止,例如对abort的调用。SIGFPE错误的算术运算,例如除以零或导致… 阅读更多