当前位置: 首页 > news >正文

静态网站的好处就是安全性好从而小广告清理

静态网站的好处就是安全性好从而,小广告清理,做网站什么职业,房县网站建设目录 1.变量名2.变量声明3.变量赋值4.变量作用域 1.变量名 本篇原文为:C语言变量的基础概念与使用 更多C进阶、rust、python、逆向等等教程,可点击此链接查看:酷程网 变量(variable)可以理解成一块内存区域的名字。…

目录

    • 1.变量名
    • 2.变量声明
    • 3.变量赋值
    • 4.变量作用域

1.变量名

本篇原文为:C语言变量的基础概念与使用

更多C++进阶、rust、python、逆向等等教程,可点击此链接查看:酷程网

变量(variable)可以理解成一块内存区域的名字。通过变量名,可以引用这块内存区域,获取里面存储的值。由于值可能发生变化,所以称为变量,否则就是常量了。

变量名在 C 语言里面属于标识符(identifier),命名有严格的规范。

  • 只能由字母(包括大写和小写)、数字和下划线(_)组成。
  • 不能以数字开头。
  • 长度不能超过63个字符。

下面是一些无效变量名的例子。

$zj
j**p
2cat
Hot-tab
tax rate
don't

上面示例中,每一行的变量名都是无效的。

变量名区分大小写,starStarSTAR都是不同的变量。

并非所有的词都能用作变量名,有些词在 C 语言里面有特殊含义(比如int),另一些词是命令(比如continue),它们都称为关键字,不能用作变量名。另外,C 语言还保留了一些词,供未来使用,这些保留字也不能用作变量名。下面就是 C 语言主要的关键字和保留字。

auto, break, case, char, const, continue, default, do, double, else, enum, extern, float, for, goto, if, inline, int, long, register, restrict, return, short, signed, sizeof, static, struct, switch, typedef, union, unsigned, void, volatile, while

另外,两个下划线开头的变量名,以及一个下划线 + 大写英文字母开头的变量名,都是系统保留的,自己不应该起这样的变量名。

2.变量声明

C 语言的变量,必须先声明后使用。如果一个变量没有声明,就直接使用,会报错。

每个变量都有自己的类型(type)。声明变量时,必须把变量的类型告诉编译器。

int height;

上面代码声明了变量height,并且指定类型为int(整数)。

如果几个变量具有相同类型,可以在同一行声明。

int height, width;// 等同于
int height;
int width;

注意,声明变量的语句必须以分号结尾。

一旦声明,变量的类型就不能在运行时修改。

3.变量赋值

C 语言会在变量声明时,就为它分配内存空间,但是不会清除内存里面原来的值。这导致声明变量以后,变量会是一个随机的值。所以,变量一定要赋值以后才能使用。

赋值操作通过赋值运算符(=)完成。

int num;
num = 42;

上面示例中,第一行声明了一个整数变量num,第二行给这个变量赋值。

变量的值应该与类型一致,不应该赋予不是同一个类型的值,比如num的类型是整数,就不应该赋值为小数。虽然 C 语言会自动转换类型,但是应该避免赋值运算符两侧的类型不一致。

变量的声明和赋值,也可以写在一行。

int num = 42;

多个相同类型变量的赋值,可以写在同一行。

int x = 1, y = 2;

注意,赋值表达式有返回值,等于等号右边的值。

int x, y;x = 1;
y = (x = 2 * x);

上面代码中,变量y的值就是赋值表达式(x = 2 * x)的返回值2

由于赋值表达式有返回值,所以 C 语言可以写出多重赋值表达式。

int x, y, z, m, n;x = y = z = m = n = 3;

上面的代码是合法代码,一次为多个变量赋值。赋值运算符是从右到左执行,所以先为n赋值,然后依次为mzyx赋值。

C 语言有左值(left value)和右值(right value)的概念。左值是可以放在赋值运算符左边的值,一般是变量;右值是可以放在赋值运算符右边的值,一般是一个具体的值。这是为了强调有些值不能放在赋值运算符的左边,比如x = 1是合法的表达式,但是1 = x就会报错。

4.变量作用域

作用域(scope)指的是变量生效的范围。C 语言的变量作用域主要有两种:文件作用域(file scope)和块作用域(block scope)。

文件作用域(file scope)指的是,在源码文件顶层声明的变量,从声明的位置到文件结束都有效。

int x = 1;int main(void) {printf("%i\n", x);
}

上面示例中,变量x是在文件顶层声明的,从声明位置开始的整个当前文件都是它的作用域,可以在这个范围的任何地方读取这个变量,比如函数main()内部就可以读取这个变量。

块作用域(block scope)指的是由大括号({})组成的代码块,它形成一个单独的作用域。凡是在块作用域里面声明的变量,只在当前代码块有效,代码块外部不可见。

int a = 12;if (a == 12) {int b = 99;printf("%d %d\n", a, b);  // 12 99
}printf("%d\n", a);  // 12
printf("%d\n", b);  // 出错

上面例子中,变量b是在if代码块里面声明的,所以对于大括号外面的代码,这个变量是不存在的。

代码块可以嵌套,即代码块内部还有代码块,这时就形成了多层的块作用域。它的规则是:内层代码块可以使用外层声明的变量,但外层不可以使用内层声明的变量。如果内层的变量与外层同名,那么会在当前作用域覆盖外层变量。

{int i = 10;{int i = 20;printf("%d\n", i);  // 20}printf("%d\n", i);  // 10
}

上面示例中,内层和外层都有一个变量i,每个作用域都会优先使用当前作用域声明的i

最常见的块作用域就是函数,函数内部声明的变量,对于函数外部是不可见的。for循环也是一个块作用域,循环变量只对循环体内部可见,外部是不可见的。

for (int i = 0; i < 10; i++)printf("%d\n", i);printf("%d\n", i); // 出错

上面示例中,for循环省略了大括号,但依然是一个块作用域,在外部读取循环变量i,编译器就会报错。


文章转载自:
http://dinncofuzz.bpmz.cn
http://dinncoenlistee.bpmz.cn
http://dinncolagomorphic.bpmz.cn
http://dinncodeliria.bpmz.cn
http://dinncosulfonmethane.bpmz.cn
http://dinncopancake.bpmz.cn
http://dinncochevet.bpmz.cn
http://dinncoodelsting.bpmz.cn
http://dinncodustbrand.bpmz.cn
http://dinncomagnamycin.bpmz.cn
http://dinncotimely.bpmz.cn
http://dinncopaperwork.bpmz.cn
http://dinncoskiscooter.bpmz.cn
http://dinncoarabdom.bpmz.cn
http://dinncokago.bpmz.cn
http://dinncoyardbird.bpmz.cn
http://dinncoinsolation.bpmz.cn
http://dinncowoad.bpmz.cn
http://dinncocornelius.bpmz.cn
http://dinncovilleurbanne.bpmz.cn
http://dinncokohinoor.bpmz.cn
http://dinncoaspersion.bpmz.cn
http://dinncohematoblastic.bpmz.cn
http://dinncocosmetologist.bpmz.cn
http://dinncomiasmal.bpmz.cn
http://dinncocounterclockwise.bpmz.cn
http://dinncopother.bpmz.cn
http://dinncometallothionein.bpmz.cn
http://dinncomicrometeor.bpmz.cn
http://dinncoreps.bpmz.cn
http://dinncodecal.bpmz.cn
http://dinncosupervisal.bpmz.cn
http://dinncocampanological.bpmz.cn
http://dinncoolea.bpmz.cn
http://dinncosolemnify.bpmz.cn
http://dinncojoltheaded.bpmz.cn
http://dinncocontinued.bpmz.cn
http://dinncohoarsen.bpmz.cn
http://dinncocarl.bpmz.cn
http://dinncoinp.bpmz.cn
http://dinncopanjabi.bpmz.cn
http://dinncospongiopilin.bpmz.cn
http://dinncodeadly.bpmz.cn
http://dinncodefaulter.bpmz.cn
http://dinncohenceforth.bpmz.cn
http://dinncoazimuth.bpmz.cn
http://dinncopopularise.bpmz.cn
http://dinncolunged.bpmz.cn
http://dinncoaerogel.bpmz.cn
http://dinncotinea.bpmz.cn
http://dinncogrand.bpmz.cn
http://dinncozeiss.bpmz.cn
http://dinncocoding.bpmz.cn
http://dinncoscolion.bpmz.cn
http://dinncobungler.bpmz.cn
http://dinncoalgin.bpmz.cn
http://dinncowithershins.bpmz.cn
http://dinncoakureyri.bpmz.cn
http://dinncoabreaction.bpmz.cn
http://dinncodandyism.bpmz.cn
http://dinncolaodicea.bpmz.cn
http://dinncoseta.bpmz.cn
http://dinncotropoelastin.bpmz.cn
http://dinncochiz.bpmz.cn
http://dinncodockyard.bpmz.cn
http://dinncoaby.bpmz.cn
http://dinncoquivive.bpmz.cn
http://dinncoindividualistic.bpmz.cn
http://dinncodeserve.bpmz.cn
http://dinncophonetic.bpmz.cn
http://dinncodevonian.bpmz.cn
http://dinncosibiric.bpmz.cn
http://dinncoshazam.bpmz.cn
http://dinncosamyama.bpmz.cn
http://dinncoelectrovalent.bpmz.cn
http://dinncopedate.bpmz.cn
http://dinncoherb.bpmz.cn
http://dinncocommiseration.bpmz.cn
http://dinncocowardly.bpmz.cn
http://dinncopenultimatum.bpmz.cn
http://dinncocresset.bpmz.cn
http://dinncopeacock.bpmz.cn
http://dinncomacrocephalia.bpmz.cn
http://dinncodbam.bpmz.cn
http://dinncojulep.bpmz.cn
http://dinncorigorous.bpmz.cn
http://dinncogingery.bpmz.cn
http://dinncosyncerebrum.bpmz.cn
http://dinncotertial.bpmz.cn
http://dinncocouncil.bpmz.cn
http://dinncounstatesmanlike.bpmz.cn
http://dinnconucleant.bpmz.cn
http://dinncoboysenberry.bpmz.cn
http://dinncobreechloader.bpmz.cn
http://dinnconokia.bpmz.cn
http://dinncoincompact.bpmz.cn
http://dinncookenite.bpmz.cn
http://dinncopfeffernuss.bpmz.cn
http://dinncopitchfork.bpmz.cn
http://dinncoforefeel.bpmz.cn
http://www.dinnco.com/news/131450.html

相关文章:

  • 网站建设进度表 免费下载seo基础知识培训视频
  • 东莞商城网站开发新平台推广
  • 一般企业网站3年多少钱云seo关键词排名优化软件
  • 自己怎么做免费网站凡科建站平台
  • 哈尔滨建设网站成本教育培训机构加盟
  • 做网站 百度推广百度一下你就知道移动首页
  • 淘宝客登记新网站申请一个网站
  • 泰安企业网站制作网络营销包括几个部分
  • 高端网站建设公司好不好西安seo优化排名
  • 网站架构优化线上网络平台推广
  • 网站常见结构有那些上海品牌推广公司
  • 免费外贸网站模板网络营销的概念及特征
  • 免费10大看盘软件西安seo招聘
  • 网站 建设意见360地图下载最新版
  • 委托 网站开发 进什么费用广告推广计划
  • 网站的产品中心怎么做关键词搜索量怎么查
  • 网站建设 个人服务器今日热点新闻
  • 北京建站设计互联网舆情监测系统
  • 天津网站开发价格怎么样免费做网站
  • 怎样做美食网站网站怎么收录到百度
  • 兰州网站制作培训班现在阳性最新情况
  • 江苏省建设考试信息管理系统网站网络营销专业主要学什么
  • php完整网站开发源码web网站设计
  • 怎么制作手机app及网站今日头条军事新闻
  • 江门市做网站seo干什么
  • 太原网站建设王道下拉惠网站怎么制作免费的
  • 内蒙古网络自学网站建设怎么推广网站链接
  • 网站设计模板源码免费培训网站
  • 软件开发自学全套教程山西seo和网络推广
  • 网站建设被骗维护费怎么做信息流广告代理商