摘要: 优良的函数编程习惯: 1.使用断言检测函数参数的合法性 2.使用const提高函数的健壮性 3.全面思考提高代码的鲁棒性 4.return的良好习惯1.1assert的使用: assert只有在Debug版本才有效,作用是在函数的入口处检测参数的有效性;... 阅读全文
posted @ 2017-03-12 16:31 乐天的java 阅读(58) 评论(0) 推荐(0)
摘要: 测试代码如下 void myfun(int i, int ii){ cout << i << " " << ii << endl;}void main(){ int b = 3; int arr[] = {6,7,8,9,10}; ... 阅读全文
posted @ 2017-03-12 11:43 乐天的java 阅读(71) 评论(0) 推荐(0)
摘要: #include#include#includevoid myprintf(const char *s1, ...){ assert(s1 != NULL); va_list arg; char c; char ch; char *str; int temp;... 阅读全文
posted @ 2017-03-12 11:39 乐天的java 阅读(50) 评论(0) 推荐(0)
摘要: //02.可变参数的使用方式二:// 1.不采用可变参数前置参数作为读取结束条件,而是按照可变参数列表的结束特点进行读取// 2.不定长可变参数列表的使用特点:// (1).引入头文件:// #include //支持可变参数列... 阅读全文
posted @ 2017-03-12 11:36 乐天的java 阅读(32) 评论(0) 推荐(0)
摘要: 可变参数使用方式一: 1.将第一个参数作为确定可变参数列表当中所存储的参数总个数 2.可变参数使用流程总结: (1).包含头文件: #include (2).确定函数声明: void vatest(... 阅读全文
posted @ 2017-03-12 11:29 乐天的java 阅读(137) 评论(0) 推荐(0)
摘要: //01.递归的分类:// 1.函数调用方式:// 直接调用自己-->直接递归-->简单递归// 间接调用自己-->间接递归-->复杂递归// 2数据结构模型:// 线性递归:f(n)=f(n-1)+n;// 树状递... 阅读全文
posted @ 2017-03-12 11:28 乐天的java 阅读(33) 评论(0) 推荐(0)
摘要: 程序片段(01):函数.c+call.c+测试.cpp 内容概要:函数 ///函数.c#include #include //01.函数:// 1.函数的作用:重用代码,重用功能// 表象:代码的封装,代码的重用// 实质:功能的封装... 阅读全文
posted @ 2017-03-12 09:54 乐天的java 阅读(222) 评论(0) 推荐(0)
摘要: #includeusing namespace std;int main1(){ int a[3][2] = { (0, 1), (2, 3), (4, 5) }; int *p; p = a[0];//a[0]相当于a[2]这个数组的数组名 int(*... 阅读全文
posted @ 2017-03-11 10:37 乐天的java 阅读(43) 评论(0) 推荐(0)
摘要: 数组不为菜鸟所知的秘密 #includeusing namespace std;//数组指针与指针数组/* int(*p)[5]数组指针本质是指针,指向元素个数为5的数组 int *p[5]指针数组本质是数组因为[]的优先级比*高p先和[]结合*/int m... 阅读全文
posted @ 2017-03-11 09:53 乐天的java 阅读(37) 评论(0) 推荐(0)
摘要: 1、数组名的本质 数组名的本质相当于一个常量指针 如:int a[10] aint *const a; int b[10][20] bint (*const b)[20] 所以a[5]==*(a+5); b[8][9]==*(*(b+8)+9)==*(b... 阅读全文
posted @ 2017-03-11 07:44 乐天的java 阅读(50) 评论(0) 推荐(0)