
C-C++
wming3
因为喜欢, 所以认同. sina-weibo wming3
展开
-
字符串比较 c语言
/* 1. str1 和str2是两个数组,分配3个字符空间,并把"abc"的内容复制到数组中去, 这是两个初始地址不同的数组,所以str1和str2的值是不同的 2. str3和str4是两个指针,不需要为它们分配内存来存储字符的内容, 只需要将它们指向"abc"中的内存中的地址就可以了, 由于"abc"是常量字符串,在内存中是一个拷贝, 所以str原创 2015-07-11 22:59:46 · 2147 阅读 · 0 评论 -
c中宏定义
定义两个宏#define LENGTH(array) (sizeof(array)) / (sizeof(array[0]))#define swap(a,b) (a^=b,b^=a,a^=b) 第一个宏用于求数组的长度 sizeof是求字节数 第二个宏用于两个数据的交换第二个宏可以转化为下面的代码void swap(int *a, int *b){原创 2015-07-12 16:39:48 · 548 阅读 · 0 评论 -
旋转数组中的最小值
旋转数组: 把一个数组最开始的若干个元素搬到数组的末尾,我们称为数组的旋转 要求: 输入一个递增排序的数组的一个旋转,输出旋转数组的最小值. 思想: 从头到尾遍历数组一次,就能找到数组的最小值.时间复杂度是O(n); 根据旋转数组的特性,分析可以得到两个排序的子数组,前面的额子数组的元素大于后面的子数组的元素. 我们可以使用二分法查找到思路查找这个最小的元素原创 2015-07-15 21:12:00 · 1237 阅读 · 0 评论 -
字符串翻转-不能使用系统函数
思想 定义头尾两个指针 交换头尾指针的数据 //字符串翻转char *strrev(char *str){ //判断字符是否为null或是空字符串 if(str == NULL || str == '\0') { return str; } //定义char数组指针 char *start = str; char原创 2015-08-02 17:12:40 · 1784 阅读 · 0 评论 -
指针和引用
举例: test(int number1, int &number2){ 第一个参数: 是普通的指针 第二个参数: 是一个指向指针的引用. 调用时,第一个参数传递参数地址就行,而第二个参数则需要传递一个指针变量给它调用方法:int num1 = 123;int *num2 = 2342;test(&num1, num2); 指向指针的引用是某一指针的别名,同变量的引用翻译 2015-07-22 14:46:42 · 796 阅读 · 1 评论