C++day01

上学期进行了C语言的学习,但在深入的了解了程序及其算法以后,我发现仅用原本的知识是不足以解决更多复杂的问题,因此现在开启C++的学习,作为对C的一个补充。

——第一个C++程序,输出一串字符

#include<iostream>
using namespace std;
int main()
{
     cout<< "Hello,world." << endl;
    system("pause");
    return 0;
 }

与C当中使用printf函数输出不同,C++里面似乎更加直接,使用cout即可

——创建第一个变量

#include<iostream>
using namespace std;
int main()
{
    int a = 10;
    cout << "a = " << a << endl;

    system("pause");
    return 0;
}

注意到,同样和C当中不同,输出变量时,不需要再声明他的类型,直接写上变量名即可。

——创建一个常变量

#include<iostream>
#define day 7//宏定义
using namespace std;
int main()
{
    const int a = 7;
    cout << "一周一共有" << day << "天" << endl;
    cout << "一周一共有" << a << "天" << endl;
    /*
    当对day和a变量赋值时,运行程序将会出错。
    */

    system("pause");
    return 0;
}

——typedef定义

#include<iostream>
using namespace std;  //告诉编译器使用 std 命名空间。命名空间是 C++ 中一个相对新的概念。
int main()
{	
	typedef int love;//typedf为int 取了一个“外号”,即love。
	love a = 1;
	int b = 1;
	cout << "a=" << a << "b=" << b << endl;
	system("pause");
	return 0;
 }

———枚举类型实例

#define _CRT_SECURE_NO_WARNINGS 1
#include <iostream>
using namespace std;

int main() {
    enum days { one, two=2, three }day;
    day = one;
    switch (day) {
    case one:
        cout << "one" << endl;
        break;
    case two:
        cout << "two" << endl;
        break;
    default:
        cout << "three" << endl;
        break;
    }
    cout << "one=" << one << endl;
    cout << "two=" << two << endl;
    cout << "three=" << three << endl;

    return 0;
}

——变量作用域

  • 在函数或一个代码块内部声明的变量,称为局部变量。

  • 在函数参数的定义中声明的变量,称为形式参数。

  • 在所有函数外部声明的变量,称为全局变量。                              

在函数或一个代码块内部声明的变量,称为局部变量。它们只能被函数内部或者代码块内部的语句使用(包括主函数内部)。

在所有函数外部定义的变量(通常是在程序的头部),称为全局变量。全局变量的值在程序的整个生命周期内都是有效的。

全局变量可以被任何函数访问。也就是说,全局变量一旦声明,在整个程序中都是可用的。

#include<iostream>
using namespace std;
int b = 10;
int main()
{
	{
		int a = 5;
		cout << "a=" << a << endl;
	}
	cout << "b=" << b << endl;

	return 0;
 }

改为

#include<iostream>
using namespace std;
int b = 10;
int main()
{
	{
		int a = 5;
		cout << "a=" << a << endl;
	}
	cout << "a=" << a << endl;

	return 0;
 }

 发现编译不通过,问题出现在,在main函数里调用了区块内定义的a,而这个变量的生命周期在执行完区块内语句后,就结束了,main里面调用的是一个NULL。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值