当前位置: 首页 > news >正文

中小企业服务中心网站建设企业所得税优惠

中小企业服务中心网站建设,企业所得税优惠,苏州网站建设书生,网站需求分析模板一、指针与数组和字符串1、指针与数组当声明数时#xff0c;编译器在连续的内存空间分配基本地址和足够的储存空间#xff0c;以容纳数组的所有元素。基本地址是数组第一个元素(索引为0)的存储位置。编译器还把数组名定义为指向第一个元素的常量指针。元素的地址是通过索引和…一、指针与数组和字符串1、指针与数组当声明数时编译器在连续的内存空间分配基本地址和足够的储存空间以容纳数组的所有元素。基本地址是数组第一个元素(索引为0)的存储位置。编译器还把数组名定义为指向第一个元素的常量指针。元素的地址是通过索引和数据类型的比例因子来计算的例如 x[3]的地址 基本地址 (3 x 整型数据的比例因子)如何表示元素a[i][j]的(其中int *p; p a;)0123451234p----指向第 0 行的指针;p i----指向第 i 行的指针;*(pi)----指向第 i 行的第一个元素的指针;*(pi)j----指向第 i 行第 j 个元素的指针;*((pi)j)----存储在(i, j)单元(即第 i 行第 j 列)的值。数组 a 的基本地址为 a[0][0]从这个地址开始编译器按行为所有的元素分配连续的存储空间。例如int a[3][4] {{15,27,11,35},{22,19,31,17},{31,23,14,36}}数组a的存储如下|15 |27| 11| 35 |22 |19 |31 |17 |31 |23 |14 |36 | |--如果把 p 声明为整型指针并且初始地址为a[0][0]()那么:a[i][j] *(p4*ij);2、指针与字符串C语言支持另一种创建字符串的方法即使用char类型的指针变量。例如char *str good;上述声明语句创建了一个文本字符串然后将其地址保存在指针变量str中这样指针 str 就指向字符串 “good” 的第一个字符如下所示|g(str) | o | o | d | \0 | |--由此可以用指针访问整个字符串printf(%s,str);put(str);当然也可以用指针来访问字符串中的单个字符。3、指针数组指针的一项重要的应用就是处理字符串表特别是处理行的长度可变的“凹凸不平的数组”时例如char *name[3] { New Zealand, Australia, India };上面的声明语句只分配了28个字符这足以保存所有的字符具体如下|N| e |w | |Z |e |a |l |a| n| d| \0| |-- |A| u| s| t| r| a| l| i| a| \0| |I| n| d| i| a| \0| 下面的语句可以用来显示着三个名称for(i 0; i 2; i) printf(%s\n,name[i]);要访问第 i 个名称的第 j 个字符可以这样编写语句char c *(name[i]j);二、指针与函数1、将指针作为函数的参数使用指针传递变量地址的函数调用过程称为引用调用(我们已经说过传递变量实际值的过程称为 “按值调用”)。引用调用提供了一种机制让被调用的函数可以修改调用函数中存储的值。 请注意以下代码//例一void exchange(int *a, int *b){int t;t*a;*a*b;*bt;}void main(){int x, y;x 100;y 200;printf(%d ,%d\\n,x,y);exchange(x,y);printf(%d ,%d\\n,x,y);}//例二void exchange(int *a, int *b){int *t;ta;ab;bt;printf(%d ,%d\n, *a, *b);}void main(){int x, y;x 100;y 200;printf(%d ,%d\n, x, y);exchange(x,y);printf(%d ,%d\n, x, y);}代码例二并不会使x,y的值发生互换因为当函数指针ab获得xy的地址后作为值进行储存交换ab的值并没有改变其值(xy的地址)指向的xy的值。2、函数返回指针指针是C语言的一种数据类型因此也可以使用函数返回一个指向调用函数的指针。请看下面的代码int *larger(int* , int*)/*prototype*/main(){int a 10;int b 20;int *p;p larger(a, b);/*Function call*/printf(%d,p);}int *larger(int *x, int *y){if(*x *y)return(x);/*address of a*/elsereturn(y);/*address of b*/}注意返回的地址必须是调用函数中变量的地址。如果返回的是指向被调用函数中局部变量的地址将产生错误。3、指向函数的指针与变量一样函数也属于某种数据类型在内存中也需要有储存地址。因此可以声明一个指向函数的指针。如同指向字符数组的指针可以接收任意大小的字符数组一样指向函数的指针可以指向任意的函数如此可以减少函数的数量使函数的功能更加强大。指向函数的指针声明如下type (*fptr)();该语句告诉编译器fptr为指向函数的的指针返回type类型的值。用括号把*fptr括起来是必要的。记住下面的语句type *gptr();表示的是把gptr声明为函数它返回一个指向type类型的指针。请仔细关注以下代码#include#include#define PI 3.1415926double table(double (*f)(), double, double, double);double y(double);double cos(double);double table(double (*f)(), double min, double max, double step){double a, value;for(a min;a max; astep){value (*f)(a);printf(%5.2f %10.4f\n,a,value);}}double y(double x){return (2*x*x-x1);}void main(){printf(table of y(x) 2*x*x-x1\n\n);table(y, 0.0, 2.0, 0.5);printf(table of cos(x)\n\n);table(cos, 0.0, PI, 0.5);}三、指针与结构体在前面章节中我们讨论把结构体作为参数传递给函数。我们还看到这样的实例其中函数接收整个结构体的副本并在运行后把他返回给调用函数。正如我们前面介绍的那样该方法无论是在运行速度还是在内存使用上都不是高效的。通过以指向结构体的指针作为传递参数然后使用指针来操纵结构体成员就可以克服该缺点。请看以下函数print_invent(struct *item){printf(Name: %s\n, item-name);printf(price%f\n, item-price);}该函数可以用下面的语句来调用print_invent(product);请关注以下两点数组名表示的是第0个元素的地址。结构体变量的数组名也是如此运算符“-”、“.”、“()”和“[]”的有先级最高。正确理解优先级及关联性非常重要。
http://www.zqtcl.cn/news/979475/

相关文章:

  • 免费建一个自己的网站做国内网站花费
  • 苏州手机网站搭建郑州建设网站制作公司
  • 贵阳网站建设kuhugz沽源网站建设
  • 深圳网站seo推广河北建设工程信息网停用公告
  • 给公司建网站 深圳wordpress去掉cat
  • 网站建设推荐华网天下土巴兔装修平台怎么收费
  • 微网站 网页成品网站模块
  • soap公司网站wordpress 相关推荐
  • 浙江质监站网址固始网站建设公司
  • 济南 外贸网站建设怎么知道网站是哪个公司做的
  • 分享wordpress优秀主题东莞百度seo找谁
  • 顺德网站制作案例价位超兽vps群
  • 网站建设 搜狐号电脑赚钱的项目有哪些
  • 做生意的网站广州互联网企业100强
  • 网站单页支付宝支付怎么做网站制作公司套路
  • 本网站维护升级官方网站建设滞后
  • 网站上漂亮的甘特图是怎么做的江门seo方法
  • 局域网建设网站seo优化查询
  • 网站安装模板wordpress多个函数文件
  • 网站建设飠金手指排名十二毕业设计论文网
  • 高密哪里做网站好网络营销的四大特点
  • 网站锚文本怎么做怎么在网上接网站建设
  • php做公司网站中国大工程建设需要什么样的人才
  • 优化公司怎么优化网站的技能网站建设项目需求
  • wordpress怎么修改主页网站改版seo
  • 做视频网站需要多少带宽lnmp wordpress 数据库
  • 网站速度慢wordpress徐州网络推广公司
  • 网站建设增城seo外链是什么意思
  • php做企业网站管理系统免费网站制作手机软件的app
  • 商城网站建设咨询如何通过网站后台修改网站