zl程序教程

您现在的位置是:首页 >  Java

当前栏目

【C语言】auto 关键字

2023-02-18 15:49:43 时间

?write in front? ?大家好,我是謓泽,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流? ?2021年度博客之星物联网与嵌入式开发TOP5~2021博客之星Top100~阿里云专家博主 & 星级博主~掘金⇿InfoQ创作者~周榜120﹣总榜998⇿全网访问量30w+? ?本文由 謓泽 原创 CSDN首发?如需转载还请通知⚠ ?个人主页-謓泽的博客_CSDN博客 ? ?欢迎各位→点赞? + 收藏⭐️ + 留言?​ ?系列专栏-【C语言】关键字_謓泽的博客-CSDN博客? ✉️我们并非登上我们所选择的舞台,演出并非我们所选择的剧本?

① auto ⇿ 局部变量 ?概述→编译器默认所有变量都是 auto 的。注⇢默认的是局部变量的才是auto语句的。 ⒈描述 ⇨ auto 用于定义一个局部变量为自动的,这意味着每次执行到定义变量的时候都会产生一个新的变量,并且对其进行初始化。 ⒉注意 ⇨ 其实 auto 是可以进行省略,如果不是特别去指定的话,局部变量的存储模式是默认为自动的。例如-int a = 10;其实你这样写就是 auto int a = 10;只不过默认的,说的直白一点就是他们是等价的。

#include<stdio.h>
int main(void)
{
    auto int i;//warning:未引用局部变量
}

?说明⇢所以当我们在写代码的时候都应该要养成对局部变量进行初始化的习惯,这是编程当中非常好的一个习惯。注-在全局变量当中默认初始化为zero,所以在全局变量的时候是可以不用进行初始化操作的。 ⒊代码示例演示 ⇨ 举例-【C语言】在修饰当中仅仅使用 auto 变量修饰局部变量是默认为整形,但是 auto 在全局变量的时候会出现编译错误。

#include<stdio.h>
auto a = 0;
int main(void)
{
 
}

?运行结果-出错✘ ?说明⇢在上述讲解当中有所过auto是仅仅在局部变量当中的,这很重要。

#include<stdio.h>
int main(void)
{
	auto a = 0;
    return 0;
}

?运行结果-成功✔ ?拓展知识点如下? ㈠局部变量⇢包含在代码块中的变量叫做局部变量。局部变量具有临时性。进入代码块,自动形成局部变量,退出代码块自动释放。 ㈡全局变量⇢在所有函数外定义的变量,全局变量是具有全局性。 ㈢区别⇢局部变量具有全局型可以在全局使用、局部变量具有局限性只能在代码块当中使用。 ㈣代码块⇢用大括号{}扩起来(包围)就被称之为是代码块。 ㈤注⇢如果全局变量和局部变量冲突的话我们都是以局部优先为标准的。 ㈥作用域⇢该变量的有效区域范围,局部变量的有效范围通常都是在本函数或者是代码块当中是有效的。全局变量的作用域是全局有效的。 ㈦最后⇢在现在我们基本上不会定义 auto 因为在局部变量当中默认就是 auto,当然 auto 也是一个比较老的关键字,在编写程序代码的时候我们通常都是把它auto给省略掉的。