举一个例子:
#include<stdio.h>
void Test() { static int i=0; int j=0;
for(int k=1;k<=10;++k) { i+=k; j+=k; } printf("i=%d ",i); printf("j=%d ",j); }
int main() { Test(); Test(); }
注意,i是静态变量。
因为静态变量一旦定义,在它的作用域(就是从定义的一刻开始到最后一个}为止)中永远都有效,而且能够存储“记忆”上一次的数值,直到整个程序运行完毕。
因此,第一次执行Test的时候,i和j一样。
但是第二次的时候,因为i可以记忆上一次的内容(所以和上一次的数值继续相加)。
但是j是自动变量(用完之后随即释放)。
所以结果不同:
函数指针:
#include<stdio.h>
int add(int n1,int n2) { return n1+n2; }
int minus(int n1,int n2) { return n1-n2; }
int main()
{
int (*p)(int n1,int n2); //指针函数,用于指向一个函数,只要这个函数包括同参数、相同类型返回值即可。
p=add;
printf("%d
",p(1,2)); //add函数返回值int,需要两个int参数
p=minus;
printf("%d",p(1,2)); //minus函数返回值int,需要两个int参数
}
近期RAKsmart上线云服务器Cloud Server产品,KVM架构1核1G内存40G硬盘1M带宽基础配置7.59美元/月!RAKsmart云服务器Cloud Server位于美国硅谷机房,下单可选DIY各项配置,VPC网络/经典网络,大陆优化/精品网线路,1-1000Mbps带宽,支持Linux或者Windows操作系统,提供Snap和Backup。RAKsmart机房是一家成立于2012年...
LOCVPS发布了7月份促销信息,全场VPS主机8折优惠码,续费同价,同时香港云地/邦联机房带宽免费升级不加价,原来3M升级至6M,2GB内存套餐优惠后每月44元起。这是成立较久的一家国人VPS服务商,提供美国洛杉矶(MC/C3)、和中国香港(邦联、沙田电信、大埔)、日本(东京、大阪)、新加坡、德国和荷兰等机房VPS主机,基于XEN或者KVM虚拟架构,均选择国内访问线路不错的机房,适合建站和远程办...
简介华圣云 HuaSaint是阿里云国际版一级分销商(诚招募二级代理),专业为全球企业客户与个人开发者提供阿里云国际版开户注册、认证、充值等服务,通过HuaSaint开通阿里云国际版只需要一个邮箱,不需要PayPal信用卡,不需要买海外电话卡,绝对的零门槛,零风险官方网站:www.huasaint.com企业名:huaSaint Tech Limited阿里云国际版都有什么优势?阿里云国际版的产品...