![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言
文章平均质量分 70
书包fan
这个作者很懒,什么都没留下…
展开
-
函数指针 —— 《C和指针》
函数指针函数指针是指向函数的指针。 因此“函数指针”本身首先是指针变量,只不过该指针变量指向函数。声明返回值类型 ( *指针变量名) (形参列表);int (*pfunc)(int x);int(*pfunc)(int); //无需将形参名给出初始化和普通指针一样,函数指针在使用之前必须初始化为指向某个函数。int func(int x); /...原创 2020-01-16 18:19:20 · 260 阅读 · 0 评论 -
C语言字符串及其常用操作函数——《C和指针》
C语言字符串的概念一串以NUL字节结尾的零个或多个字符。C语言不存在显式的字符串类型,字符串通常存储在字符数组中。字符串常量在程序中使用字符串常量会生成一个“指向字符的常量指针”,当一个字符串常量出现于一个表达式中时,表达式所使用的值就是这些字符所存储的位置,而不是这些字符本身。因此,可以把字符串常量赋值给一个“指向字符的指针”,该指针的值就是字符串常量所存储的地址。void t...原创 2018-09-04 12:23:15 · 786 阅读 · 0 评论 -
分析C语言的声明——《C专家编程》
《C专家编程》一书第三章分析了C语言声明的优先级规则,并以char * const *(*next)();为例,用优先级规则对该声明进行分析。优先级规则如下:对上述声明的分析过程如下:对以上分析加以概括:char * const *(*next)(); 表示:next是一个指针,其指向的内容是一个函数(即函数指针),该函数返回另一个指针,该指针指向一个类型为c...原创 2018-09-04 14:12:39 · 251 阅读 · 0 评论 -
C语言类型转换
本文内容摘自《C和指针》隐式类型转换C语言的整型算术运算总是至少以缺省整型类型的精度来进行的。为了获得这个精度,表达式中的字符型和短整型操作数在使用之前被转换为普通整型,这种转换成为整型提升(integral Promotion)。例如:char a, b, c;...a = b + c;b和c的值首先被提升为普通整型,然后再执行加法运算,加法运算的结果将被截短,然后再存...原创 2018-09-04 16:30:59 · 153 阅读 · 1 评论 -
数组作为函数的参数
本文内容摘自《C和指针》传值与传址《C和指针》函数的参数一节(7.3节)指出,C函数的所有参数均以“传值调用”方式进行传递,这意味着函数将获得参数值的一份拷贝。这样函数可以放心地修改这个拷贝值,而不必担心会修改调用程序实际传递给它的参数。如果被传递的参数是一个数组名,由于数组名的值是一个指向数组第一个元素的指针,因此实际传递给函数的是指向数组起始位置的指针的一份拷贝,该指针同样指向数组...原创 2018-09-05 10:00:10 · 22229 阅读 · 0 评论 -
指针的运算
本文内容摘自《C和指针》指针的运算包括算术运算和关系运算。只有指向数组元素的指针可以进行指针的运算。算术运算指针的算术运算仅限于2种形式。第一种形式:指针 ± 整数标准定义这种形式只能用于指向数组中某个元素的指针。这类表达式的结果类型也是指针。对一个指针加1会使它指向数组中下一个元素,加5使它右移5个元素的位置。对一个指针减3使它向左移动3个元素的位置。对某一类型的指针,指...原创 2018-09-05 13:54:23 · 851 阅读 · 2 评论 -
C语言结构和联合
结构1. 结构的声明结构的通常形式是:struct 结构标签(可选){ 类型1 标识符1; 类型2 标识符2; ...}变量定义(可选);基于以上形式,结构可以有如下几种声明://形式1struct{ int age; char name[10];} Person1, Person2;//形式2struct Perso...原创 2018-09-05 18:09:12 · 1636 阅读 · 2 评论 -
C语言常用内存优化总结
1. 使用乘法代替除法。如果不需要较高的精度,使用float代替double。2. 如果一个函数内部会频繁地使用全局变量,可以使用局部变量作为全局变量的拷贝。3. 栈总是保持对齐在4字节边界(32位CPU),局部变量定义为char或short并不能带来存储空间上的节省,且会降低变量访问速度。因此,在不修改对齐方式的情况下,尽量将局部变量定义为32位。4. 需要使用结构体作为函数参数时,...原创 2019-05-06 15:45:52 · 1625 阅读 · 3 评论