1.复数和虚数类型 我们先来说一下什么是复数,什么是虚数。我们在高中时期应该接触过a+bi这种类型的数,这就是复数。复数包含实数和虚数两者数。当a=0时,这个就是虚数。当b=0时,这个数就是实数了。
C99标准支持复数和虚数的类型,但是有所保留。一些独立实现(如嵌入式处理器的实现)就不需要复数选项,所以这个数据类型是可选项。
C有三种复数类型:float_Complex、double_Complex、long double_Complex。例如,float_Complex类型的变量应包含两个float类型的值,分别表示复数的实部和虚部。类似的,C语言的三种虚数类型float_Imaginary、double_Imaginary、long double_Imaginary。
如果包含complex.h头文件,就可以用complex代替_Complex,,用imaginary代替_Imaginary。还可以用I(i的大写)来代替-1的平方根。
为什么不直接使用complex也是因为C中包含了某些关键字会引起冲突。
2.其他类型 C语言还有一些从基本类型衍生的其他类型,包括数组、指针、结构和联合(不懂也没关系,我也还不懂)。
但是在现在的学习中我们其实已经接触过了指针。虽然你可能对指针还没有什么印象,但是你一定见过'&'吧。没错,就是scanf里面的取地址运算符,他就是创造了一个指针告诉scanf()把数据放在何处。
一般来说: 我们在代码中不会直接使用复数、虚数,而是用一个结构体来模拟虚数:
struct complex
{
int real;
int vir;
};
需要输出一个数的时候,可以这样子:
complex a;
a.real=6;
a.vir=3;
cout<
一般用不到啦~
【复数和虚数类型】
推荐阅读
- c/c++|有感 Visual Studio 2015 RTM 简介 - 八年后回归 Dot Net,终于迎来了 Mvc 时代,盼走了 Web 窗体时代...
- C/C++|C/C++ basis 02
- Qt实战|Qt+OpenCV联合开发(二十一)--图像翻转与旋转
- Qt实战|Qt+OpenCV联合开发(十四)--图像感兴趣区域(ROI)的提取
- Qt实战|Qt+OpenCV联合开发(十三)--通道分离与合并
- opencv|Qt+OpenCV联合开发(十六)--图像几何形状绘制
- Qt实战|Qt+OpenCV联合开发(十七)--随机数与随机颜色
- SNAT的MASQUERADE地址选择与端口选择
- IPTABLES的连接跟踪与NAT分析
- IPVS分析