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

舞钢网站建设用网站模板建网站

舞钢网站建设,用网站模板建网站,wordpress个人主页,外贸外链网站有时候我们希望定义这样一种变量#xff0c;它的值不能被改变#xff0c;在整个作用域中都保持固定。例如#xff0c;用一个变量来表示班级的最大人数#xff0c;或者表示缓冲区的大小。为了满足这一要求#xff0c;可以使用const关键字对变量加以限定#xff1a;constin…有时候我们希望定义这样一种变量它的值不能被改变在整个作用域中都保持固定。例如用一个变量来表示班级的最大人数或者表示缓冲区的大小。为了满足这一要求可以使用const关键字对变量加以限定constint MaxNum 100;//班级的最大人数这样 MaxNum 的值就不能被修改了任何对 MaxNum 赋值的行为都将引发错误MaxNum 90;//错误试图向 const 变量写入数据我们经常将 const 变量称为常量Constant。创建常量的格式通常为const type name value;const 和 type 都是用来修饰变量的它们的位置可以互换也就是将 type 放在 const 前面type const name value;但我们通常采用第一种方式不采用第二种方式。另外建议将常量名的首字母大写以提醒程序员这是个常量。由于常量一旦被创建后其值就不能再改变所以常量必须在定义的同时赋值初始化后面的任何赋值行为都将引发错误。一如既往初始化常量可以使用任意形式的表达式如下所示#includestdio.hintgetNum(){ return100; }intmain(){ int n 90; constint MaxNum1 getNum();//运行时初始化 constint MaxNum2 n;//运行时初始化 constint MaxNum3 80;//编译时初始化 printf(%d, %d, %d\n, MaxNum1, MaxNum2, MaxNum3);return0; }运行结果100, 90, 80const 和指针const 也可以和指针变量一起使用这样可以限制指针变量本身也可以限制指针指向的数据。const 和指针一起使用会有几种不同的顺序如下所示constint*p1; intconst*p2; int*const p3;在最后一种情况下指针是只读的也就是 p3 本身的值不能被修改在前面两种情况下指针所指向的数据是只读的也就是 p1、p2 本身的值可以修改指向不同的数据但它们指向的数据不能被修改。当然指针本身和它指向的数据都有可能是只读的下面的两种写法能够做到这一点constint*const p4; intconst*const p5;const 和指针结合的写法多少有点让初学者摸不着头脑大家可以这样来记忆const 离变量名近就是用来修饰指针变量的离变量名远就是用来修饰指针指向的数据如果近的和远的都有那么就同时修饰指针变量以及它指向的数据。const 和函数形参在C语言中单独定义 const 变量没有明显的优势完全可以使用#define命令代替。const 通常用在函数形参中如果形参是一个指针为了防止在函数内部修改指针指向的数据就可以用 const 来限制。在C语言标准库中有很多函数的形参都被 const 限制了下面是部分函数的原型size_t strlen(constchar* str ); intstrcmp(constchar* str1,constchar* str2 ); char*strcat(char* destination,constchar* source ); char*strcpy(char* destination,constchar* source ); intsystem(constchar* command); intputs(constchar* str ); intprintf(constchar* format,...);我们自己在定义函数时也可以使用 const 对形参加以限制例如查找字符串中某个字符出现的次数#includestdio.hsize_t strnchr(constchar*str,char ch){ int i, n 0, len strlen(str);for(i0; ilen; i){ if(str[i] ch){n; } }return n; }intmain(){ char*str http://csdn.net; char ch t; int n strnchr(str, ch); printf(%d\n, n); return0; }运行结果3根据 strnchr() 的功能可以推断函数内部要对字符串 str 进行遍历不应该有修改的动作用 const 加以限制不但可以防止由于程序员误操作引起的字符串修改还可以给用户一个提示函数不会修改你提供的字符串请你放心。const 和非 const 类型转换当一个指针变量 str1 被 const 限制时并且类似const char *str1这种形式说明指针指向的数据不能被修改如果将 str1 赋值给另外一个未被 const 修饰的指针变量 str2就有可能发生危险。因为通过 str1 不能修改数据而赋值后通过 str2 能够修改数据了意义发生了转变所以编译器不提倡这种行为会给出错误或警告。也就是说const char *和char *是不同的类型不能将const char *类型的数据赋值给char *类型的变量。但反过来是可以的编译器允许将char *类型的数据赋值给const char *类型的变量。这种限制很容易理解char *指向的数据有读取和写入权限而const char *指向的数据只有读取权限降低数据的权限不会带来任何问题但提升数据的权限就有可能发生危险。C语言标准库中很多函数的参数都被 const 限制了但我们在以前的编码过程中并没有注意这个问题经常将非 const 类型的数据传递给 const 类型的形参这样做从未引发任何副作用原因就是上面讲到的将非 const 类型转换为 const 类型是允许的。下面是一个将 const 类型赋值给非 const 类型的例子#includestdio.hvoidfunc(char*str){}intmain(){ constchar*str1 csdn.net; char*str2 str1; func(str1); return0; }第7、8行代码分别通过赋值、传参传参的本质也是赋值将 const 类型的数据交给了非 const 类型的变量编译器不会容忍这种行为会给出警告甚至直接报错。
http://www.hkea.cn/news/14490546/

相关文章:

  • 手机app网站模板下载用五百丁做名字的简历网站
  • 淘宝客网站需要多大主机百度网页版首页
  • 怎么做网站系统网站dns查询
  • 建立网站信息发布登记制度网站欢迎页面代码
  • 先建设网站后付款青岛网站建设和优化
  • 郑州阿里巴巴网站建设温州网站开发服务商
  • 企业网站每个月流量费辽宁省建设厅网站
  • 在网上做效果图网站怎么做网站滑动图片部分
  • 公司做网站需要注意什么事情服装网都有哪些网站
  • .flv 网站播放wordpress评论详情页
  • 网站怎么解析到域名东莞室内设计公司
  • 深圳网站建设51duoshi运维工程师培训
  • 门户网站 布局dw做好的网页如何发布
  • 网站内链建设的方法昆明网站建设建站技巧
  • 山东省建设执业师之家官方网站做网站的思想体会
  • 云服务器建设网站用什么系统叫企业做的网站可不可以自己改主题
  • 做网站怎么赚钱 做网站怎么赚钱织梦网站修改数据库表数据
  • 南通市经济开发区建设局网站全网热搜榜
  • 济南优化推广网站seo十堰网站建设报价
  • jq网站模板佳木斯市建设局网站
  • 网站平台建设需求的意见网络公司 营销型网站
  • wordpress 如何备份数据库抖音seo排名系统
  • 怎样做淘宝联盟网站wordpress首页调用文章数
  • 网站公司seowordpress linux 中文字体
  • 安州区建设局网站咸宁公司网站建设
  • 盐城网站关键词优化一条龙网站建设哪家好
  • 优化网站排名茂名厂商二级子域名ip
  • 移动端网站怎么做外链科学
  • 网站登不上去的原因南沙seo培训
  • 做网站的客户资料交换qq群做海报 画册的素材网站