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

怎么建设免费网站网站301做下

怎么建设免费网站,网站301做下,免费商务网,网站优化怎么弄0、前言概要 本篇来自于我的另外一篇博客存储类别、链接与内存管理#xff08;一#xff09;的续篇#xff0c;主要分析了C语言中的不同存储类别、关键字以及使用的注意事项 1、自动变量 #xff08;1#xff09;属性 自动存储期、块作用域、无连接 #xff08;2一的续篇主要分析了C语言中的不同存储类别、关键字以及使用的注意事项 1、自动变量 1属性 自动存储期、块作用域、无连接 2关键字[存储类别声明符]auto 3使用例子 int loop(int n){ auto int m;}4关键解析 auto关键字在C代码中完全不同如果写C和C兼容的语言最好不要使用auto关键字由于块内使用的变量大都是auto修饰的自动变量所以在中的程序中auto关键字使用的非常少除非你想强调这是一个自动变量块作用域和无链接属性意味着只有在变量定义的块中才能“直接”使用变量名来访问该变量当然排除通过指针的情况这种属于间接变量具有自动存储期意味着程序在进入该变量声明的所在块时存在退出程序的时候变量消失当变量消失的时候该变量原来占有的内存位置现在可做他用自动变量不会自己初始化除非显示初始化它。另外可以用非常量表达式初始化自动变量前提是所用的变量之前有定义过 int main(void) {int ruth 1;//显式初始化int rance 5 * ruth;//使用了之前初始化过的变量 }2、寄存器变量 1属性 自动存储期、块作用域、无链接 2关键字[存储类别声明符]register 3使用例子 int main() {register int quick; }4关键解析 寄存器变量存储在CPU的寄存器中寄存器的数据传递速度是极快的但是通常寄存器的空间不会太大与普通变量相比访问和处理寄存器变量的速度更快由于寄存器变量存储在寄存器而非内存当中所以无法获取寄存器变量的地址这一点可以用检验一下该关键字更像是请求而不是直接命令编译器必须根据寄存器或最快可用的内存的数量衡量你的要求或是忽略你的要求这种情况下寄存器变量就会转化为自动变量。即使是这样也依旧不能对被修饰了register的变量取地址可声明为register的数据类型有限例如处理器中的寄存器可能就没有足够大的空间来存储double类型的值 3、静态外部链接变量 1属性 静态存储期、文件作用域、外部链接 2关键字[存储类别说明书]extern 3使用例子 //第一个.c文件内容 int a 100;//第二个.c文件内容 #include stdio.h int main() {extern a;printf(%d, a);return 0; }4关键解析 把一个变量的定义放在所有函数包括mian的外面那么该变量就是外部变量把变量的定义性声明放在所有函数的外面边创建了外部变量此时如果为了强调函数使用了外部变量可以在函数内部使用关键字extern再次声明但是如果是在别的.c文件里声明的外部变量就必须使用extern再次声明 //第一个.c文件 char Coal 100; char arr[10] { a, b, c };//第二个.c文件 int Errupt;//在本文件的外部变量 double Up[100];//在本文件的外部变量数组extern char Coal;//在其他文件的外部变量 extern char arr[];//在其他文件的外部变量数组int main() {extern int Errupt;//可写可不写extern double Up[];//可写可不写//使用Errupt和Up的代码//使用Coal和arr的代码return 0; }在外部变量数组中可以看到不需要指明数组的大小因为第一次已经提供了数组大小的信息由于外部变量本身具有文件作用域所以在main里面的extern整条语句完全可以省略但是如果只是省略extern比如剩下int Errupt就会重新定义一个名未Errupt的自动变量这个自动变量Errupt和外部变量Errupt是不同的静态外部变量可以被显示初始化也可以不显示初始化默认初始化未0数组也一样但是只能使用常量表达式进行初始化 int i 10;//没问题 int j 3 20;//没问题 int x sizeof(int);//没问题只要不是变长数组sizeof可以视为常量表达式 int y 10 * i;//不允许 int main() {//某些代码 }extern关键字只是一种引用式声明不是定义式声明因此不要用关键字extern创建一个外部变量的定义它只能用来引用现有的外部变量定义外部变量只能初始化一次并且必须在定义该变量时进行 //第一个.c文件 int a 100;//第二个.c文件 int main() {extern int a 200;//这是不被允许的因为在另外一个文件里已经初始化为100了a 200;//但是如果上面只写extern int a;使用赋值就可以赋值不是初始化 }4、静态内部链接变量 1属性 静态存储期、文件作用域、内部链接 2关键字[存储类别关键字]static 3使用例子 static int svil 1;int main(){ //某些代码 4关键解析 在内部链接的静态变量只能在本文件内部使用另外也可以使用extern在函数的内部声明存在这个外部变量注意不会改变链接属性 int a 1;//具有外部链接属性 static int b 2;//具有内部链接属性 int main() {printf(%d %d\n, a, b);{extern int a;//提醒a是外部变量但是依旧是外部连接属性extern int b;//提醒外部变量但是依旧是内部连接属性printf(%d %d, a, b);}return 0; }5、静态无链接变量 1属性 静态存储期、块作用域、无链接 2关键字[存储类别说明书]static 3使用例子 #include stdio.h void trystat(void) {int fade 1;static int stay 1;printf(fade %d and stay %d\n, fade, stay); } int main() {int count;static int number;for (count 1; count 3; count){printf(Here comes iteration %d:\n, count);trystat(); }printf(%d\n, number);return 0; }4关键解析 静态的意思是该变量在内存中原地不动计算机会记录它的值并不是说它的值不变它不像自动变量一样在一定范围使用完后就被销毁每次调用函数trystat后fade会被重新初始化为1stay只在只会在编译trystat函数时被初始化一次第一条声明fade确实是trystat函数的一部分每次调用该函数都会执行这条声明第二条声明stay实际上不是trystat函数的一部分如果逐语句调试就会发现这条指令貌似被跳过了这是因为静态变量和外部变量在程序被载入的时候就已经执行完毕。第二条声明语句放进函数中是为了告诉编译器只有在trystat函数才能看到该变量如果未显式初始化静态变量就会被自动初始化为0。例如本例中的number在打印的时候并未报错甚至还自动给了number一个0的值 6、参考来源 来自书籍《C primer puls》第12章的“存储类别、链接和内存管理”章节
http://www.hkea.cn/news/14475711/

相关文章:

  • flash网站建设个人简介辽宁建设厅新网站
  • 通过网站做外贸竞价推广账户竞价托管收费
  • 网站做实名验证网易企业邮箱登录入口手机
  • 中山网站建设sipocmsseo教程从零开始
  • 国外网页设计分享网站wordpress 谷歌搜索
  • 大良营销网站建设市场wordpress 房产
  • 网络公司企业网站模板网站淘客宝怎么做
  • 如何不花钱开发网站做家纺网站哪家好
  • 电子商务网站建设相关职位百度数字人内部运营心法曝光
  • 做网站没有按照合同履行一般网络公司做什么项目
  • 自主建网站大同网站建设制作
  • 网站策划案怎么做网站类别选择
  • 南阳专业做网站公司mm131网站用什么软件做的
  • 旅游网站排行榜前十名官网江苏大都建设工程有限公司网站
  • 淘客网站app建设共享门店新增跑腿距离计算优化
  • wordpress用户名忘了网站seo思路
  • 网站美工和平面设计师敏捷模型是软件开发模型吗
  • 哪个网站建设最好百度h5制作软件下载
  • 外贸做的亚马逊网站是哪个哈尔滨网页设计学校
  • mvc中手把手做网站wordpress 继续阅读
  • 建设防伪网站wordpress 4.5.4
  • 网络推广 公司 200个网站跨境电商erp选哪个好
  • 常德公司网站建设高端品牌女装连衣裙
  • 吉林省住房建设安厅网站安全管理宁波建设网站的公司
  • 住房和城乡建设主管部门网站页面访问维护
  • 哪个着陆页网站线上推广什么意思
  • 网站后台是什么企业网站制作及cms技术
  • 网站导航栏最多可以做几个简历模板免费下载wps
  • 私人可注册网站吗合肥网站排名
  • 如何判断一个网站是否用织梦建设的网站 制作软件