static修饰的全局变量只能在当前声明文件内使用不能够在其他文件中使用。举例12staticinta0;//static修饰后变量a仅在本文件中可见其他文件里不可见变量a隐藏了别的文件不可以调用intb0;//其他文件可以通过extern int b来使用本文件中的全局变量b目标此文件调用上一个文件中的全局部变量b1234567#includestdio.hexternintb;//先用extern把b调过来intmain(){intib;//把b赋值给ireturn0;}static修饰局部变量12345678910111213141516includestdio.hintmain(){inti0;for(i0,i10;i){ptintf(counter%d\n,fun());//在main函数里调用fun函数来修改counter的值并获取前提counter必须被static修饰若不修饰counter会随着fun函数退出而销毁其他外部函数不能获取counter的值}return0;}intfun()//声明一个函数fun实现计数功能{staticintcounter;//函数内部声明static局部变量counter可以保证counter只能在fun函数内部被修改其他地方不能修改counter的值生命周期为整个源程序作用域不改变只能在此函数内使用counter//调用此fun函数时counter就加1returncounter//返回counter的值}static修饰函数static对函数修饰与对全局变量的修饰相似只能被本文件中的函数调用不能被同一程序其他文件中的函数调用。举例12345678staticintgetdata1()//static修饰getdata1此函数不能被其他文件调用{return1;}intgetdata2()//未加static修饰其他文件可以调用getdata2{return2;}另一个文件想调用getdata2()123456externintgetdata2();//把上一个文件中getdata2()函数调过来intmain(){intretgetdata2();//定义ret并初始化把getdata2的返回值赋给retreturn0;}注1一个源程序通常由若干个c文件组成c文件之间相互调用函数与变量时需要通过extern进行外部声明。2extern的作用是用于声明外部变量、外部函数static用来防止c文件内的函数、变量被外部调用隐藏作用。3声明对象基本变量、函数、结构体、枚举等。4static局部变量存在内存的静态区即使当前函数运行结束静态变量的值不会被销毁还继续存在函数下次运行时仍可以用到这个值。const1. const声明的变量的值不能再被修改与#define相比const限定符优点1宏定义仅是对字符常量简单替换不能检查类型2const可以保护被修饰的变量防止意外修改3编译器通常不为普通const常量分配存储空间而是将它们保存在符号表中这使得它成为一个编译期间的常量没有了存储与读内存的操作使得它的效率也很高2.以下三个变量声明的含义1int const*p中const 修饰的是指针p 表示指针p的值不能改变而p即地址是可以改变的。2int * const p中const修饰的 p即地址是常量不可改变但是指针p的值可以改变。3int const *p const中是1和2兼得表示 只读 其地址以及地址中对应的值都不可改变。而const int *p与int const *p用法一样修饰的都是指针p的值不能改变。BOOL关键字bool是声明 布尔逻辑变量的变量要么是真要么是假用1表示true、0表示false_Bool类型实际上是一种整数类型仅占用1位存储空间 程序通过布尔值可选择执行哪部分代码。bool done false;while(!done){......}break关键字break是用来跳出一个doforwhile的循环它也可以结束一个switch语句的 子句让程序忽略下面的case代码case关键字与switch搭配用来检测匹配。continue在一个循环语句中 continue语句用来结束这次循环后面的循环继续下面代码显示 除了10之外0-20的所有数字。12345678for(inti 0;i 21;i){if(i 10)//判断i为10时走这个if语句i不为10时就不走if语句直接走cout语句{continue;//判断i等于10了那就结束这次循环不计入不couti为10这个数据}cout i;//cout用于在计算机屏幕上显示信息即打印、输出}到此这篇关于C/C举例讲解关键字的用法的文章就介绍到这了
C++举例讲解关键字的用法
static修饰的全局变量只能在当前声明文件内使用不能够在其他文件中使用。举例12staticinta0;//static修饰后变量a仅在本文件中可见其他文件里不可见变量a隐藏了别的文件不可以调用intb0;//其他文件可以通过extern int b来使用本文件中的全局变量b目标此文件调用上一个文件中的全局部变量b1234567#includestdio.hexternintb;//先用extern把b调过来intmain(){intib;//把b赋值给ireturn0;}static修饰局部变量12345678910111213141516includestdio.hintmain(){inti0;for(i0,i10;i){ptintf(counter%d\n,fun());//在main函数里调用fun函数来修改counter的值并获取前提counter必须被static修饰若不修饰counter会随着fun函数退出而销毁其他外部函数不能获取counter的值}return0;}intfun()//声明一个函数fun实现计数功能{staticintcounter;//函数内部声明static局部变量counter可以保证counter只能在fun函数内部被修改其他地方不能修改counter的值生命周期为整个源程序作用域不改变只能在此函数内使用counter//调用此fun函数时counter就加1returncounter//返回counter的值}static修饰函数static对函数修饰与对全局变量的修饰相似只能被本文件中的函数调用不能被同一程序其他文件中的函数调用。举例12345678staticintgetdata1()//static修饰getdata1此函数不能被其他文件调用{return1;}intgetdata2()//未加static修饰其他文件可以调用getdata2{return2;}另一个文件想调用getdata2()123456externintgetdata2();//把上一个文件中getdata2()函数调过来intmain(){intretgetdata2();//定义ret并初始化把getdata2的返回值赋给retreturn0;}注1一个源程序通常由若干个c文件组成c文件之间相互调用函数与变量时需要通过extern进行外部声明。2extern的作用是用于声明外部变量、外部函数static用来防止c文件内的函数、变量被外部调用隐藏作用。3声明对象基本变量、函数、结构体、枚举等。4static局部变量存在内存的静态区即使当前函数运行结束静态变量的值不会被销毁还继续存在函数下次运行时仍可以用到这个值。const1. const声明的变量的值不能再被修改与#define相比const限定符优点1宏定义仅是对字符常量简单替换不能检查类型2const可以保护被修饰的变量防止意外修改3编译器通常不为普通const常量分配存储空间而是将它们保存在符号表中这使得它成为一个编译期间的常量没有了存储与读内存的操作使得它的效率也很高2.以下三个变量声明的含义1int const*p中const 修饰的是指针p 表示指针p的值不能改变而p即地址是可以改变的。2int * const p中const修饰的 p即地址是常量不可改变但是指针p的值可以改变。3int const *p const中是1和2兼得表示 只读 其地址以及地址中对应的值都不可改变。而const int *p与int const *p用法一样修饰的都是指针p的值不能改变。BOOL关键字bool是声明 布尔逻辑变量的变量要么是真要么是假用1表示true、0表示false_Bool类型实际上是一种整数类型仅占用1位存储空间 程序通过布尔值可选择执行哪部分代码。bool done false;while(!done){......}break关键字break是用来跳出一个doforwhile的循环它也可以结束一个switch语句的 子句让程序忽略下面的case代码case关键字与switch搭配用来检测匹配。continue在一个循环语句中 continue语句用来结束这次循环后面的循环继续下面代码显示 除了10之外0-20的所有数字。12345678for(inti 0;i 21;i){if(i 10)//判断i为10时走这个if语句i不为10时就不走if语句直接走cout语句{continue;//判断i等于10了那就结束这次循环不计入不couti为10这个数据}cout i;//cout用于在计算机屏幕上显示信息即打印、输出}到此这篇关于C/C举例讲解关键字的用法的文章就介绍到这了