问问题描述
答精选答案

以我理解,分配空间给变量后,赋予初值称为初始化。
非自动变量是在编译期分配其空间,可以显式(即手工)给予初值,否则会隐式把该空间内所有内容设为零。
自动变量是运行时每次进入函数时,才分配空间的。同一变量名实际上会对应不同的空间(例如考虑递归时的情况)。与非自动变量不同,自动变量是不会自隐式清零的。若没有在定义变量时显式初始化,未赋值前,该变量的内容是不确定值。为什么要有这种区别呢?
都自动清零不是更安全么?
其中一个原因是,非自动变量只有一份,可以在编译、链接及加载过程初始化其值,而没有什么运行时开销。
相反,自动变量进行初始化是有运行时开销的。
有时候我们的确只需为变量分配空间而不需初始化,例如sprintf(buffer, ...)中的buffer若是自动变量,为它初始化是徒劳无功的。
所以C语言设计时为了性能,便容许自动变量不进行初始化。
这和许多语言不一样。因为我学C语言时(25年前)只看过一些台湾中文原著,未读过经典,以上仅是个人经验和猜测,并未引用相关标准及文献。
答其他回答(1条)
-
在自动化领域中,PLC(可编程逻辑控制器)是一种用于控制和监测机械或工业过程的计算机设备。"将PLC初始化"指的是对PLC进行初始设置和准备,以确保其正常运行。
当进行PLC初始化时,通常会执行以下步骤:
1. 电源连接:确保PLC的电源正确连接,并满足电压和电流要求。
2. 硬件检查:检查PLC硬件组件的连接,包括输入输出模块、通信模块、存储模块等。
本文来自作者[小白看图学财经]投稿,不代表公众科技网立场,如若转载,请注明出处:https://www.cpst.net.cn/jingxuan/1964636.html

评论列表(4条)
我是公众科技网的签约作者“小白看图学财经”!
希望本篇文章《将PLC初始化是什么意思》能对你有所帮助!
本站[公众科技网]内容主要涵盖:教育咨询,知识百科
本文概览:以我理解,分配空间给变量后,赋予初值称为初始化。非自动变量是在编译期分配其空间,可以显式(即手工)给予初值,否则会隐式把该空间内所有内容设为零。自动变量是运行时每次进入函数时,才分配空间的。同一变量名实际上会对应不同的空间(例如考虑递归时的情况)。与非自动变量不同,自动变量是不会自隐式清零的。若没有在定义变量时显式初始化,未赋值前,该变量的内容是不确定值。为什么要有这种区别呢?都自动清零不是更安全么?其中一个原因是,非自动变量只有一份,可以在编译、链接及加载过程初始化其值,而没有什么运行时开销。相反,自动