高质量函数C++,C语言设计--指针
来源:互联网 发布:学编程有什么好书 编辑:程序博客网 时间:2024/05/19 18:43
摘抄自 高质量C,C++编程指南
- 如果参数是指针,且仅作输入用,则应在类型前加 const,以防止该 指针在函数体内被意外修改。
> 例如: void StringCopy(const char *strSource,char *strDestination);
- 如果输入参数以值传递的方式传递对象,则宜改用“ const &”方式来 传递,这样可以省去临时对象的构造和析构过程,从而提高效率。
- 避免函数有太多的参数,参数个数尽量控制在 5 个以内。如果参数太 多,在使用时容易将参数类型或顺序搞错。
- 尽量不要使用类型和数目不确定的参数。 C 标准库函数 printf 是采用不确定参数的典型代表,其原型为:
int printf(const chat *format[, argument]…);
返回值的规则
不要省略返回值的类型。如果函数没有返回值,那么
应声明为 void 类型。
引用与指针的比较
1,程序中,n是 m的一个引用(reference),m是被引用物(referent)。
int m;
int &n = m;
所以 n既不是 m的拷贝,也不是指向 m的指针,其实 n就是 m它自己。
2,引用的一些规则如下:
(1)引用被创建的同时必须被初始化(指针则可以在任何时候被初始化)。
(2)不能有 NULL引用,引用必须与合法的存储单元关联(指针则可以是 NULL)。
(3)一旦引用被初始化,就不能改变引用的关系(指针则可以随时改变所指的对象)。
应用
1、指针变量初始化
方法1:uint8 a;
uint8 *p
p = &a;
方法2:uint8 a;
uint8 *p = &a;
2、二维数组的地址
如a[2][3] = { {1, 2, 3}, {4, 5, 6}};
首地址 a或者&a[0]或者 &a[0][0];
a[1]代表的是什么呢?a[1]表示a[1][0]的地址,即&a[[1][0]。代表行的地址,可以看做是一个数组名字。
0 0
- 高质量函数C++,C语言设计--指针
- <高质量C>C函数设计基础(一)
- 函数设计 (高质量C++/C编程指南)
- 编写高质量C语言代码--API设计
- 第六章 高质量C编程规范函数设计
- C/C++高质量编程之函数设计
- 高质量c/c++编程学习之四:函数设计
- 高质量程序设计指南:C++/C语言
- 《高质量程序设计指南——C/C++》第6章 C/C++函数设计基础
- 函数输入参数是指针,如何传递? (高质量C++/C编程指南)
- 【高质量代码】如何写出更高质量的C/C++代码(2):函数设计
- 黑马程序员-----高质量C语言编程
- c语言函数指针
- C语言函数指针
- c语言 函数指针
- C语言函数指针
- C语言 ---- 指针函数
- C语言函数指针
- 042期正版四字梅花诗:冰清一洁
- 文章标题
- Java的getClass()
- 【机器学习】简单感知器
- STL迭代器(二)
- 高质量函数C++,C语言设计--指针
- SQL on Hadoop TPCDS性能测试
- 有关Android Activity的面试题和答案
- 谷歌广告sdk—iOS版本
- LeetCode 240. Search a 2D Matrix II
- Java GUI:图形用户界面三剑客相比拼
- xcode中配置opencv: No member named 'clock_t' in the global namespace
- Vim与系统剪贴板交互方法
- leetcode 88. Merge Sorted Array