C++培训_003_数据类型_结构体_基础输入输出

C++的名称空间

  来先看看下面几行代码,不懂没关系,因为会长还没打通你的任督二脉。

#include "iostream"//下文 基础输入输出函数 cout 的头文件。 
using namespace std;//使用std命名空间。下文 cout 就是该名称空间下的。 
#include "windows.h"// 下文用到 system()函数
//自定义一个名称空间。空间名字为 a。 
//这是单文件定义,有很多缺点,为了方便理解,这里就这样写了。 以后讲到头文件时候,会讲多文件定义方法。 
namespace a
{
	void wang_huizhang()
	{
    		cout << "计算机协会C++培训" << endl;//endl是换行的意思。
	}
}

using namespace a;//定义后,要使用该名称的空间。 如果没有这句,下面函数无法识别 wang_huizhang() 这个函数。 

int main()
{
	wang_huizhang();
	system("pause");
    return 0;
}

  首先,我们看到了主函数和他的返回值。// int main() {  };现阶段我们写的一切程序都是从主函数开始。其实也并不是从主函数开始,这里就不深究了。在主函数里,不断调用其它的函数和功能来实现程序。

  在主函数里,我们看到了输出函数 cout<<"     ";输出函数包含在  输入输出流头文件  iostream 里的函数。为了使用这个函数,我们必须包含这个头文件。即第一行的 #include"iostream"

    头文件下面有一行 using 命令。其意思是 使用 std 名称空间。cout<<" ",endl,都是这个空间里的关键字。只有使用了这个名称空间,编译器才能调用这些功能。

    std 名称空间是世界公认的。我们可以自己写名称空间。如上述代码,写了一个叫做 a 的名称空间。空间里有一个叫做 wang_huizhang() 的函数。

    下面一行我们写了using namespace a;这里是单文件定义方法,单文件定义并不好,为了观看方便,就不写多文件定义了,以后会讲到多文件定义。

    使用了名称空间 a。在主函数里我们就可以调用里面的 wang_huizhang() 这个函数。//去掉这行试试会怎样呢?当然是编译器无法识别这个wang_huizhang()函数了。

  以上扯远了。言归正传,开始了解 数据类型。

C++的数据类型

  整数 (integer)类型。

#include"iostream" 
using namespace std;
#include "windows.h"// 下文用到 system()函数
int main()
{
	int a;//开辟叫做 a 用来存整数的内存。
	a=1;//让叫做 a 的地方赋值为 1 。 
	 
	int b,c,d;//开辟 名字叫做 b 和 c 和 d 的三个整数型空间。
	 
	int e=2;//开辟叫做 e 的空间 并赋值为 2 。开辟并赋值 
	
	int f=3,g=4;//开辟 f 和 g 并赋值。 
	
	int h(3);//开辟叫做 h 的整数型空间,并赋值为 3 。
	 
	cout<<a<<endl<<e<<endl<<h<<endl;//依次输出 a 换行 e 换行 h 换行。
	//endl暂时理解为换行,它含有清空缓冲区的功能。 
	
	system("pause");
    return 0;
}

//最后按下 f9 把代码编译成 0 和 1 。再按 f10 运行该程序。
//所有的程序都要先编译,再运行。(先 f9 再 f10)。 

  其他类型的定义方法和 int 型一样。参照上述代码。

#include"iostream" 
using namespace std;
#include "windows.h"// 下文用到 system()函数
int main()
{
	cout<<INT_MAX<<endl; // INT_MAX 是 int 型的最大值。超出这个范围 就要使用其他类型了。
	cout<<INT_MIN<<endl;//同理,这是最小值。这个最大最小值也是在头文件 iostream 中的。 
	system("pause");
    return 0;
}
//按 f9 和 f10 看看结果吧。以后 这句都会省略掉。

 运行结果如下一张图:

  由上图可知,我的操作系统中,int 型的最大值为 2147483647 (2 的32次方 -1)。最小值为 -2147483648 (-2的32次方)。超出这个范围就会出错。不同系统会有不同最大最小值。//可以试试超出后有什么有趣的结果。

  其他整型如下代码:

#include"iostream" 
using namespace std;
#include "windows.h"// 下文用到 system()函数
int main()
{
	short int a=10;//可以写成 short a=10 ; 因为 int 在这里可以省略。
	//short int 是短整型。有时用不到那么大的空间,就使用这个短整型。
	cout<<SHRT_MIN<<endl;//输出短整型的最小值。 
	 
	long int b;//长整型。(理论上讲比int行长) 
	long long int c;//长长整型。(更加长的整形)
	
	long long int d=LLONG_MAX;//
	
	cout<<d<<endl;//输出 d 看看长长整型的最大值。 
	
	cout<<LONG_MAX<<endl;//输出长整型的最大值。 
	cout<<LONG_MIN<<endl;//输出长整型的最小值。 
	system("pause");
    return 0;
}

   整型前面都会空出一位当作符号位。生活中,负数有时用不到。这是就可以把符号位空出来,这样内存就可以存储更大一些的数据了。(使用unsigned关键词来定义无符号数,而上文的有符号数关键词 signed 可以省略。)

#include"iostream" 
using namespace std;
#include "windows.h"// 下文用到 system()函数
int main()
{
	unsigned short int a;//定义无符号短整型 a 。
	
	cout<<USHRT_MAX<<endl;//输出无符号的短整型最小值。 
	
	signed long int b;//定义有符号长整形。也可以写成,long int b;因为signed可以省略。
	
	long long int d=ULLONG_MAX;//定义 d 为 无符号长长整型最大值。 
	
	cout<<d<<endl;//输出 d。 
 
	system("pause");
    return 0;
}

数据大小的关键词(这里随意看看就行)

//整数部分

CHAR_BIT            char位数
CHAR_MAX          char最大
CHAR_MIN           char最小
SCHAR_MAX        有符号char最大
SCHAR_MIN         有符号char最小
UCHAR_MAX       无符号char最大
SHRT_MAX           short最大
SHRT_MIN            short最小
USHRT_MAX        无符号short最大
INT_MAX                int型最大
INT_MIN                 int型最小
UINT_MAX             无符号int最大
LONG_MAX           long int 最大
LONG_MIN            long int 最小
ULONG_MAX        无符号long int 最大
LLONG_MAX         long long int 最大
LLONG_MIN          long long int 最小
ULLONG_MAX      无符号long long int最大

//下面是浮点数部分。
FLT_MANT_DIG    float型尾数位数
FLT_DIG                float型最少有效数字位数
FLT_MIN_10_EXP   带有全部有效数字float型的负指数的最小
FLT_MAX_10_EXP   float型的正指数的最大
FLT_MIN                保留全部精度的float型正数的最小
FLT_MAX               float型正数的最大
FLT_EPSILON       float可以表示的,与1.00的最小差

   来看浮点数的定义,和 int 型的一模一样:

#include"iostream" 
using namespace std;
#include "windows.h"// 下文用到 system()函数
int main()
{
	float a=0.1;//浮点型,就是小数。
	double b=0.0000000123456;//双精度浮点型,就是更大的小数。 
	long double c=0.123456789879787979798;//就是更大更大的小数。 
	system("pause");
    return 0;
}

char型(字符型)

  用来存放字符。

#include"iostream" 
using namespace std;
#include "windows.h"// 下文用到 system()函数
int main()
{
	char firstname = 'w';
	char secondname = 'a';
	char a='!';
	cout<<firstname<<secondname<<a<<endl;
	system("pause");
    return 0;
}

bool型

  bool类型用于表示 真 和 假。(即 0 和 非0 )
  定义方法和 int 型 一样。

#include"iostream" 
using namespace std;
#include "windows.h"// 下文用到 system()函数
int main()
{
	bool a=false;//也可以写出 bool a = 0; 0 就是假的意思。
	cout<<a<<endl;
	
	bool b(1);//只要不是 0 ,写多少都表示 非0 。但是建议写成 1 。防止意外发生。 
	cout<<b<<endl; 
	
	bool c(true);
	cout<<c<<endl;
	
	system("pause");
    return 0;
}

自定义类型(结构体)

不要求掌握。以后会详细讲解。这里只要知道有这种类型就行。

#include"iostream" 
using namespace std;
//自定义类型,叫做 wang 的结构体。他和 int double char 等基础类型都是C++的数据类型。
struct wang
{
	bool isboy;
	bool ischild;
	short int age;
	char telnumber[12];
};
//输出结构体 wang 的代码。
void shuchu(struct wang x)
{
	cout<<x.isboy<<endl;
	cout<<x.ischild<<endl;
	cout<<x.age<<endl;
	cout<<x.telnumber<<endl;
}

int main()
{
	wang a={true,false,20,"18852899999"};
	shuchu(a);
    return 0;
}

苹果系统安装windows双系统:

  苹果电脑安装windows双系统是比较简单的,但是我只有论理,没实验过,不敢乱搞。

  这里要用到苹果的 bootcamp软件。方法如下:

http://jingyan.baidu.com/article/656db918fc9701e381249cf5.html

  按照链接的步骤你们试试吧。苹果电脑我没搞过,只有理论。怕搞坏了赔不起。

基础输入输出流

cout,和,cin 是基础输入输出流函数。在缓冲区输入和输出。endl 是换行并清空缓冲区的关键词,在输出函数清空缓冲区能避免出错。

#include"iostream" 
using namespace std;
#include "windows.h"// 下文用到 system()函数
int main()
{
	
	int a;
	float b;
	cin>>a>>b;
	cout<<"a的相反数为"<<-a<<endl;
	cout<<"b为:"<<b<<endl;
	
	system("pause");
    return 0;
}
  getchar();和putchar();。这两个并不是函数,而是在头文件中的宏定义。
#include"iostream" 
using namespace std;
#include "windows.h"// 下文用到 system()函数
int main()
{
	
	char c;
	c=getchar();
	putchar(c);
	cout<<endl;
	system("pause");
    return 0;
}






评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值