c 深度剖析 1
1.register
static 在代码块外或函数声明 用于更改标识符的链接属性
static 在代码块内的变量定义 用于更改存储类型
|
1
2
3
4
5
6
7
8
9
|
static int c;//链接属性为internal , 存储属性:静态,作用域:整个文件作用域 int d(int e1,int e2)//e1 e2 原型作用域,即 e1 和e2 不能相同{ static int g=20; //代码块内 链接属性为无, 存储属性:静态,作用域:整个函数作用域} |
static int c;//链接属性为internal , 存储属性:静态,作用域:整个文件作用域
static int g=20; //代码块内 链接属性为无, 存储属性:静态,作用域:整个函数作用域
g在程序运行完后,不会被销毁,重新调用函数,g不会再被初始化。
3.c的编程规范(部分)
1.变量名要可读
2.注意字母l和数字1,字母o和数字0;
3.宏定义,枚举类型,只读变量采用大写命名。
4,单字符变量名尽量不要用。
4.sizeof
sizeof 为c语言中32个关键字之一。
|
1
2
3
4
5
6
7
8
9
10
|
#include <stdio.h>void main(){ double i=1.1; sizeof(double);//正确 sizeof(i);//正确 sizeof double;//错误 sizeof i;//正确} |
sizeof i;//正确说明sizeof 为关键字而不是函数
一般应用时都加()。
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
#include <stdio.h>void func(int b[3]){printf("%d \n",sizeof(b));}void main(){double b[3]={1,2,3};func(b);printf("%d \n",sizeof(b));printf("%d \n",sizeof(b[1]));printf("%d \n",sizeof(&b));printf("%d \n",sizeof(&b[1]));} |

sizeof(b) 返回的是数组的大小以4个字节为单位,3个double类型 ,故为24
sizeof(b[1])返回的是double类型 故为 8
void func(int b[3])
{
printf("%d \n",sizeof(b));}
说明参数传递的是指针
printf("%d \n",sizeof(&b));printf("%d \n",sizeof(&b[1]));均为指针,故为4
|
1
2
|
sizeof (int) *q 求int的字节数后 乘q *在此处为乘法符号sizeof (int *q)求指针的字节数 |
5 if else
float变量与 0比较
|
1
|
if(a!=0)不应该这么写, |
|
1
|
if((a>=-EPSINON)&&(a<=EPSINON)应该这样写 |
指针变量与零值比较
|
1
|
if(NULL==p) |
if else 语句书写时注意
1.一般将常量放在前面,这样如果将== 错写成 =,则成了赋值语句,给常量赋值是非法的,故可以检查出错误。
2,if 后不管有多少条语句,都要加{}
3.将发生概率大的写下前面
6swith case
1 case 后只能为 字符型或整型的常量或常量表达式。
2 每种情况都应该写入case 语句,不要将 最后一种情况写入 default语句
c 深度剖析 1的更多相关文章
- 《AngularJS深度剖析与最佳实践》简介
由于年末将至,前阵子一直忙于工作的事务,不得已暂停了微信订阅号的更新,我将会在后续的时间里尽快的继续为大家推送更多的博文.毕竟一个人的力量微薄,精力有限,希望大家能理解,仍然能一如既往的关注和支持sh ...
- ASP.NET Core管道深度剖析(2):创建一个“迷你版”的管道来模拟真实管道请求处理流程
从<ASP.NET Core管道深度剖析(1):采用管道处理HTTP请求>我们知道ASP.NET Core请求处理管道由一个服务器和一组有序的中间件组成,所以从总体设计来讲是非常简单的,但 ...
- Objective-C类成员变量深度剖析
目录 Non Fragile ivars 为什么Non Fragile ivars很关键 如何寻址类成员变量 真正的“如何寻址类成员变量” Non Fragile ivars布局调整 为什么Objec ...
- 大众点评开源分布式监控平台 CAT 深度剖析
一.CAT介绍 CAT系统原型和理念来源于eBay的CAL的系统,CAT系统第一代设计者吴其敏在eBay工作长达十几年,对CAL系统有深刻的理解.CAT不仅增强了CAL系统核心模型,还添加了更丰富的报 ...
- 深度剖析WordPress主题结构(转)
利用强大的技术,可以把基于wordpress的网站做成各种各样的形式,这除了要求wordpress主题开发人员精通html,PHP,JS,CSS等技术,还需要开发者掌握WordPress主题的框架. ...
- LCD深度剖析
LCD 深度剖析 来源:http://blog.csdn.net/hardy_2009/article/details/6922900 http://blog.csdn.net/jaylondon/a ...
- WCF技术剖析之十九:深度剖析消息编码(Encoding)实现(下篇)
原文:WCF技术剖析之十九:深度剖析消息编码(Encoding)实现(下篇) [爱心链接:拯救一个25岁身患急性白血病的女孩[内有苏州电视台经济频道<天天山海经>为此录制的节目视频(苏州话 ...
- 大兴雷克萨斯深度剖析2013款LS460L_深圳大兴雷克萨斯_太平洋汽车网
大兴雷克萨斯深度剖析2013款LS460L_深圳大兴雷克萨斯_太平洋汽车网 大兴雷克萨斯深度剖析2013款LS460L
- Java反射机制剖析(四)-深度剖析动态代理原理及总结
动态代理类原理(示例代码参见java反射机制剖析(三)) a) 理解上面的动态代理示例流程 a) 理解上面的动态代理示例流程 b) 代理接口实现类源代码剖析 咱们一起来剖析一下代理实现类($Pr ...
- 【渗透课程】第二篇下-HTTP协议的请求与响应深度剖析
[渗透课程]第二篇下-HTTP协议的请求与响应深度剖析 HTTP1.1目前支持以下7种请求方法: 常见的MIME类型如下: 第一个数字有五种可能的取值: 目录 什么是请求方法?什么是请求头? HTTP ...
随机推荐
- Ibatis.Net 入门示例(一)
新项目用的是Ibatis.Net.哥的感觉是NHibernate才是哥的最爱.没办法,即使重复,也要抽时间学习.努力做好这份工作再说吧. 一.Ibatis.Net-SQLServer2008 还是以哥 ...
- Android Phonebook编写联系人UI加载及联系人保存流程(五)
2014-01-07 10:46:30 将百度空间里的东西移过来. 在前面的文章中我们分析了UI的加载,其中提到了一个重要的对象:RawContactDeltaList mState,我前面说过这个对 ...
- 神奇的Noip模拟试题 T3 科技节 位运算
3 科技节 (scifest.pas/.c/.cpp) [问题描述] 一年一度的科技节即将到来.同学们报名各项活动的名单交到了方克顺校长那,结果校长一看皱了眉头:这帮学生热情竟然如此高涨,每个人都报那 ...
- wp8.1 Study9:针对不同的屏幕和手机方向调整UI
一.预备知识 现在不同屏幕大小WP8.1手机越来越多,那么在设计UI时,这需要我们考虑这个问题.在WP中,比例因子(a scale factor)能很好的解决问题,而且在微软系统的PC/平板/手机都是 ...
- Portlet和servlet的区别
相同之处 l 都是java技术开发的web组件 l 都是由特定的容器在管理 l 都可以动态产生各种内容 l 生命周期都是由容器管理 l 和客户端的交互通过request/response机制 不同之处 ...
- 黑马程序员——C语言基础 scanf函数 基本运算 三目运算符
Java培训.Android培训.iOS培训..Net培训.期待与您交流! (一下内容是对黑马苹果入学视频的个人知识点总结) (一)scanf函数 1> 简单介绍一下scanf函数 这是在 ...
- matlab:clear,close,clc
clear 删除工作空间中的项目,释放系统内存 语法: clear clear name clear name1 name2 name3... clear global name clear -reg ...
- 百度云加速时使用Cloudflare的技术
百度云加速时使用Cloudflare的技术 引用“百度的关于我们”这是在打脸吗?就是把英文翻译过来换个验证码 百度是全球最大的中文搜索引擎.最大的中文网站.2000年1月创立于北京中关村.如今,百度已 ...
- PHP+MySql字符问题原理分析
假如数据库已经设置了utf-8 ,php文件也设置了utf-8 ,但在php文件的查询语句中未添加了 mysql_query("set names utf8")语句,此时php页面 ...
- NCBI原始数据下载by Aspera Connect
主要参考这篇文章: http://mp.weixin.qq.com/s?__biz=MzA5NjU5NjQ4MA==&mid=2651154488&idx=1&sn=e693a ...