C笔记(Programming In C)

1. 一个函数永远无法修改它的参数的值,它只能修改这些参数的拷贝。
2.printf("a%%b=%i\n",a%b); %在格式化字符串中有特殊的意义,要打出%,需在前面加一个%
3. 转义字符:   \a  警铃
4.  int i;char c;
i=c-'0'; 此时若c=‘5’,则i=5
5.我们需要时刻牢记,除非用它来指向某个东西,否则C语言的指针的值是没有意义的。
6.(*dataptr).day=21
结构成员操作符.与* 指针运算符有更高的优先极
7.通常情况下,使用下标变量访问数组元素的过程比使用指针访问花费更多的时间。
8.一个以0开头的整数常量表示的是八进制数
9.if(number &1)
可判奇偶,奇为真,偶为假
(注,在使用一类补数表示数字的机器里这种方法无法应用于负数。)
10.异或运算符有一个有趣的特性,即任何一个数于自己异或后值为0.历史上,汇编程序常用这一个技巧快速的将一个值设置为0或比较两个值看它们是否相等。在C语言里,我们不推荐使用这种方法,因为这样做
即不节省时间,并且还可能导致程序晦涩难懂。
11.异或还有一个有趣的应用是,它可以在不用额外存储单元的情况下高效地交换两个数值
i1^=i2;
i2^=i1;
i1^=i2;
12.   number^0=number
13.德摩根律:
~(~a&~b)=a|b;
~(~a |~b)=a&b;
14.左移一位相当于乘于2。实际上,一些C语言编译器自动地用左移合适的位数以产生和乘以2的某次幂相同的效果。因为在大多数计算机上,移位操作比乘法操作要快的多。
15.对有符号数而言,右移对不同计算机有时会产生不同的结果,因此因注意右移的使用。
16.#include<stdio.h>
#include "stdio.h>
两者的区别在于,前者是在特定的系统目录中寻找该文件,而后者则是先在源文件所在目录寻找,而后到特定的系统目录中寻找(在linux下通常是/usr/include/)
17.头文件,在编程实践中,我们通常宏的定义,结构类型的定义,函数原型的声明,以及全局变量的声明都放置到头文件中。
18.在程序中使用枚举变量的时候,我们应当把枚举类型看作一种新的数据类型,而不要将其看作是整型类型,坚持使用符号而不是整数将有好处。
19.使用typedef语句为某个数据类型起一个新的名字的精确步骤如下:
a. 写出声明该数据类型变量的语句。
b. 将该语句中的变量名用新的类型名代替。
C. 在最前面加上typedef语句,这样就原来的类型定义了新的类型名
20 类型转换规则:
long double --> double--> float-->
Bool,char ,short int, bit field, enum --> int -->long long int --> long int
21.The Standard C Library
头文件为<stdlib.h>
以下为其中的一些通用函数:
int abs(n)           返回int类型参数n的绝对值
void exit(n)         终止程序的执行
char *getenv(s)      返回参数s对应的环境变量
long int labs(l) ;  long long int llas(ll)      返回long int 或 long long int  的绝对值。
void qsort(arr,n,size,comp_fn)
22.指针可以读写内存中特定字节的内容。
#define  NETWORK_CHIP_STATUS ((BYTE *)0X8000)
p_byhardware=NETWORK_CHIP_STATUS
byStatus=*p_byhardware

23.匈牙利变量命名方法
  byError----- 字节型变量(可能包含一个错误代码)
  iTank-------整型变量(可能包含油罐的数据)
  p_iTank-----整型指针
  a_chPrint---字节型数组(大多数情况,信息将被打印出来)
  fDone-------一个标记(表明一个过程是否完成)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值