c语言static
来源:学生作业帮助网 编辑:作业帮 时间:2024/09/23 03:21:23
对.Static是静态变量,定义时必须初始化,以后不能再赋值.也就是说以后的赋值都是不起作用的.
f是fac()函数内部的静态变量,那么,f只在第一次进入fac()函数时才执行其初始化操作,以后都会跳过初始化操作.所以第一次执行fac(1)函数时,f初始化为1,并乘以1,f仍为1;第二次执行fac
inti=-3.;两种写法都可以吧,只是static一直占据了内存而已
位运算的按位或00000011数字100000010数字200000011结果
#include#includeintmain(void){char*a=newchar[10];char*b=newchar[10];char*c=NULL;c=b;strcpy(b,"afdsf"
这个变量名在外面是无法被访问的,编译器不许,但是,你想办法把这个变量的地址给传出去后,你可以通过这个地址来访问这个变量的值,因为它是全局生存周期的
请参见ascII码表.按照二进制把那些二进制数字翻译成十进制就好了再问:我是小白、、、不懂。。。再答:http://baike.baidu.com/link?url=oMItPzaBEF0BUTFg_
可以,static在C语言中是表示一个变量为静态变量的,而不是常量,也不是不可变的变量.所谓的静态变量有两种情况,一种是静态全局变量,一种是静态局部变量.先说静态局部变量:通常情况下,在一个函数中定义
A,字符串在复制时连同'\0'一起复制,str的有效字符变成"china\0',长度为5;B,k是一个二级指针,两次通过*间接寻址,得到最终指向的内容i,答案为100;B,因为a>b为假,所以m被赋值
1+4=5*(p[0]+1)=*(*(p+0)+1)=*(a+3+1)=a[4]=1**(q+2)=*(*(q+2)+0)=*(p[2])=*(a+1)=4;
错误.statica,b,c;才是争取用法.
上面函数相当于下面的:intf(inta){intb=0;staticintc=3;a=c;c=c+1;b=b+1;returna;}voidmain(){inta=2,i,k;for(i=0;i
A正确额,应该是A、B比较难区分把.不要把数据结构看的太神秘,data.n可看做普通的intn;这样你用指针指向n的时候是p=&n;这样就把地址给了p,p就指向了n,而p如果之前指向一个地方比如:p=
关键字static的作用是什么?这个简单的问题很少有人能回答完全.在C语言中,关键字static有三个明显的作用:•;在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变.&
答案该是5我看错了2行3列234567X[0]就表示第0行第0列的数X[1]表示第1行第0列的数再问:不是4再答:是的是5我看错了。不好意思你实验下看看
是不止一个意思,要看用到哪里.比如:staticinta;intb;voidfunc(void){staticintc;intd;}在这里,a与b都是全局变量,二者的区别是,b可以被别的文件使用,a只
k的非除以2的余数是否等于1再问:如果知道k的值,那么k的非等于多少?O(∩_∩)O谢谢再答:如果k是0,那么非是1,否则是0
是静态修饰符,什么叫静态修饰符呢?大家都知道,在程序中任何变量或者代码都是在编译时由系统自动分配内存来存储的,而所谓静态就是指在编译后所分配的内存会一直存在,直到程序退出内存才会释放这个空间,也就是只
二楼对了.给他分吧C是这样的:
static变量会默认初始化为0.你的b[][]并没有初始化,去掉static当然会出错