-
2020-06-02 13:56:59
转载自品略图书馆 http://www.pinlue.com/article/2020/06/0213/1710670609907.html
在网上找了很多相关资料,但是因为不是计算机专业的,对“类”的概念不是很清楚。所以和我概念一样模糊的少年们,不妨看一下下面几段代码,看了就能理解static int 和 int 的区别:
code 1:
#include int a=0;//这里 int 在函数外,为全局变量int add(){ printf("%d",a++); return 0;}int main(){ for(int i=0;i#include static int a=0;//这里 static int 也在函数外,为全局变量int add(){ printf("%d",a++); return 0;}int main(){ for(int i=0;i#include int add(){ int a=0;//和上面不一样,int在函数里面了 printf("%d",a++); return 0;}int main(){ for(int i=0;i#include int add(){ static int a=0;//虽然在函数内部,可是却是一个全局变量 printf("%d",a++); return 0;}int main(){ for(int i=0;i
看到这里你应该明白了吧~我们可以得到:
static int 不管在函数内还是函数外,都作为一个全局变量可以保存它被修改以后的值。
而 int 则没有这一功能,只有作为全局变量时能保存修改。放在函数内部时,每次调用都用的是一个新的数。
更多相关内容 -
static int 与 int 的区别
2019-08-18 21:15:45static int 与 int 的区别 我在网上找了很多相关资料,但是因为不是计算机专业的,对“类”的概念不是很清楚。所以和我概念一样模糊的少年们,不妨看一下下面几段代码,看了就能理解static int 和 int 的区别: code...static int 与 int 的区别
我在网上找了很多相关资料,但是因为不是计算机专业的,对“类”的概念不是很清楚。所以和我概念一样模糊的少年们,不妨看一下下面几段代码,看了就能理解static int 和 int 的区别:
code 1:
#include <stdio.h> int a=0;//**这里 int 在函数外,为全局变量** int add() { printf("%d",a++); return 0; } int main() { for(int i=0;i<10;i++) add(); return 0; }//结果显示为0123456789
code 2:
#include <stdio.h> static int a=0;//这里 static int 也在函数外,为全局变量 int add() { printf("%d",a++); return 0; } int main() { for(int i=0;i<10;i++) add(); return 0; }//结果显示为0123456789
code 3:
#include <stdio.h> int add() { int a=0;//和上面不一样,int在函数里面了 printf("%d",a++); return 0; } int main() { for(int i=0;i<10;i++) add(); return 0; }//结果显示为0000000000
code 4:
#include <stdio.h> int add() { static int a=0;//虽然在函数内部,可是却是一个全局变量 printf("%d",a++); return 0; } int main() { for(int i=0;i<10;i++) add(); return 0; }//结果显示为0123456789
————————————————
版权声明:本文为CSDN博主「Baileys0530」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/baileys0530/article/details/37557917 -
static int a 和 int a是什么区别?
2020-05-06 11:56:361、static int a:变量a被定义为抄静态整型变量。 2、int a:定义为整型变量。 二、可变性不同 1、static int a :其值就会在编译时设定,并且无法在运行时改变。 2、int a:值在运行时设定,可以随时改变。 三、... -
static int 和 int 你所踩过的坑
2019-11-23 16:19:36对于一个刚进入大学就接触C语言的我,感觉对C还是比较了解的,但是在做编译原理大作业语法分析器的时候使用了Yacc自动生成器,虽然是自动生成,但是... static int done = 0; static int c; static int flag=0; ...对于一个刚进入大学就接触C语言的我,感觉对C还是比较了解的,但是在做编译原理大作业语法分析器的时候使用了Yacc自动生成器,虽然是自动生成,但是需要写一个辅助函数,就在写这个辅助函数的时候出现了这个特别奇怪的bug
先上代码
int yylex(void){
static int done = 0;
static int c;
static int flag=0;
if(done)return 0;
if(flag==1){
flag=0;
if(c!=' '){
if(c=='\n')done=1;
return c;
}
}
while((c=getchar())==' ');
if(isdigit(c)){
yylval = c-'0';
while(isdigit(c=getchar())){
yylval *=10;
yylval +=c-'0';
}
flag=1;
return (NUM);
}
else if(c=='\n')
done=1;
return c;
}bug 比较复杂,在这里就不赘述了,这里进入到咱们今天的重点,static int 和 int
静态变量就是要在程序的一开始就要载入,也就是它不是随着程序运行的时候而改变的
static int 和 int 在main函数中区别不大,但是如果涉及到子函数,那么区别就很大了。
static 可以看成是全局变量。
也就是说上面的代码中的状态变量都会随着函数的每一次调用而赋上初值
但是这个函数的初衷是要利用这些状态变量来进行一些跳转啊,循环啊之类的操作,所以这里需要设置成static
-
Java语言中“int”、“public”、“static int ”有什么区别?
2021-02-25 18:47:30展开全部首先62616964757a686964616fe58685e5aeb931333365646331说一下int 和public int的区别:这个问题是作用域的问题,就是说这个变量的作用范围是多大。public class Text{int a ;public void toString(){......... -
int n 与 static int n 的区别
2019-09-05 13:34:36int n 与 static int n 的区别 如下代码:get_n()中定义的 int n 是局部变量,存储在栈中,生命周期为一次函数get_n函数的执行; get_static_n中定义的 static int n 是静态变量,存储在静态数据区,生命周期是整个... -
C语言 - 【warning C4172】auto int与static int的生命周期
2019-01-04 21:04:25首先这里给出一个测试demo,根据其结果引出本篇...int *Func(int a) { int *temp; int n; n = a; temp = &n; return temp; } int main() { int *a = Func(10); //printf("%p\n", a); prin... -
static int 和 int 区别
2016-03-08 12:40:43static int 静态变量(也可以称为全局变量,值一直存在),会在静态存储区只进行一次初始化,下次调用直接赋值 int 每次调用都初始化一次,分配不同的内存地址 void f1() { static int i; i=1; if(i==1) { ... -
类中private static int的特点
2017-07-19 15:32:25举例说明public class Spike { public static void main(String[] args) { Counter a = new Counter(); System.out.println(a.increment()); System.out.println(a.anotherIncrement()); -
static int x; //初始化时x=0;
2019-02-15 03:52:03static int x; //初始化时x=0; -
详解public static int parseInt(String s, int radix)
2017-04-08 10:48:26public static int parseInt(String s, int radix) -
以下程序运行后的输出结果是:int fun(int n){static int s=1;s*=n;return s;main(){int i,s=0;for(i=1...
2021-06-06 18:56:41static的作用 函数调用 for 循环 3、要做好的功课 一般情况下 那么得到当这个函数执行完,s这个变量就销毁(不存在)了 但是有了 static 修饰后的变量,他就有了一个新作用,看下图 4、开始解题 调用了 fun()... -
error LNK2001: 无法解析的外部符号 "public: static int __cdecl
2016-08-11 10:43:14 -
TestStatic//static int i=0; 错误: 非法的表达式开始
2012-12-06 21:54:49static int i=0; public static int count() { //static int i=0; 错误: 非法的表达式开始 i++; return i; } public static void main(String[] args) { System.out.println -
c语言中static是什么意思?作用是什么
2021-05-18 16:21:34c语言中static是什么意思?作用是什么发布时间:2020-04-30 10:07:02来源:亿速云阅读:290作者:小新今天小编给大家分享的是c语言中static是什么意思?作用是什么,相信很多人都不太了解,为了让大家更加了解static... -
内核模块初始化函数static int __init init_func() 和退出函数 static void _exit exit_func() _init 和_...
2013-04-05 16:23:03模块中初始化函数有的前面有个_init有什么作用。 在内核代码iclude/linux/init.h 中有这样的定义 #define __init __section(.init.text) __cold notrace #define __initdata __section(.init.data) ... -
C++ static const int 成员变量
2019-09-03 23:19:031.static const int 成员变量 (测试代码) #include<iostream> using namespace std; class widget { friend void print_widget(); private: static const int a = 20; //测试static const int public: ... -
关于Java中public static final int 的用法
2018-03-04 14:24:02点击打开链接public class FinalOriginalTest { private final int a; private String name; public FinalOriginalTest(){ a = 3; } public FinalOriginalTest(String name){ ... -
c++中的static详解
2020-06-01 10:47:42static int i = 1; // note:1 //int i = 1; // note:2 i+=1; return i; } 要明白这个用法,我们首先要了解c/c++的内存分布,以及static所在的区间。 对于一个完整的程序,在内存中分布情况如下: 1.栈区:由编译器... -
简单数组(static + 数组)
2020-10-20 16:42:20简单数组 一、static 1.static修饰变量 a. 函数中局部变量: b. 全局变量 c. 修饰变量时 2. static修饰函数 二、数组 1.数组的定义 2.数组的使用 -
c语言static变量初始化
2020-10-30 11:39:55static int value=i++; printf("%d\n",value); } int main() { fun(0); func(1); fun(2); return 0; } 书中写道:程序输出结果为 0 0 0 作者原意是想表明 static int value=i++;是变量value由于static的修饰... -
关于Java中public static final int 用法的解答
2015-11-17 15:08:27public class FinalOriginalTest { ... private final int a; private String name; public FinalOriginalTest(){ a = 3; } public FinalOriginalTest(String name){ -
static, const, static const 与 const static
2018-09-30 23:03:241. static const/ const static, 意义一样 namespace NdpiTransformersTest { class TestMain ...static int run(int argc, const char** argv); private: static ConfigMgmtDataTypes::Co... -
对java中public、static的理解
2018-05-05 20:58:29public static int getNumber(){ return i; // 这个return返回的是全局变量的i,即前面多创建的i } public int getDealNumber(int j){ return j; // 这个return返回的是所传进来的参数,是(int j)这个... -
Java第十二届蓝桥杯b组真题 双向排序
2021-12-13 23:23:03题目链接 import java.util.*; public class Main { static int N = 100010;... static int a[] = new int[N]; static int top; public static void main(String[] args) { Scanner sc = new Scanner(System.i -
static什么意思c语言
2021-05-19 03:36:21Q1:C语言编程中“static”是什么意思?static 出现在不同的地方含义不抄同的。如果是在函数之外使用,表示该对像在此文件中是全局可访问的知,在文件之外是不可访问的。如果出现在函数内部,则表示该变量不是自动... -
错误 14 error LNK2005: public: static unsigned int const zxing::DecodeHints::CHARACTER_SET (?...
2017-03-04 23:30:15错误 14 error LNK2005: public: static unsigned int const zxing::DecodeHints::CHARACTER_SET (?CHARACTER_SET@DecodeHints@zxing@@2IB) 已经在 AztecReader.obj 中定义 DecodeHints.obj 解决方法如下: