2013年2月26日

利用逆运算的swap

摘要: #include <stdio.h>#include <iostream>using namespace std;void swap1(int &a,int &b){ a=a+b; b=a-b; a=a-b;}void swap2(int &a,int &b){ a=a^b; b=a^b; a=a^b;}int main(){ int a=10; int b=5; cout<<"before swap is a:"<<a<<" b:"<<b<&l 阅读全文

posted @ 2013-02-26 20:28 sherkey 阅读(103) 评论(0) 推荐(0)

引用传参

摘要: 引用就是对象的一个别名,引用必须要初始化,它是返回一个变量的地址里的内容,也就是返回这个变量本身。可以看做就是一个变量,只不过功能更强大了,可以修改了。int x=0;int &fun(int &i){ i=-1; return x;}这里面i的值,x的值由于是引用的形式传递,均可修改。 阅读全文

posted @ 2013-02-26 10:46 sherkey 阅读(110) 评论(0) 推荐(0)

指针的几个注意点

摘要: 指针在声明时要初始化,因为指针在创建的时候不会自动成为NULL,它缺省是随机的的一个地址(野指针)当用malloc或new分配内存,应该判断内存是否分配成功,并初始化内存。如果要用指针做为参数去分配一块内存,应该传递指针的指针或指针的引用。指针在free()之后要指向NULL,不然它的值仍然会指向该内存。如下指针s由于没有重置为NULL,它仍指向该内存。#include <stdio.h>#include <stdlib.h>#include <string.h>void GetMem(char **p,int num){ *p=(char*)malloc( 阅读全文

posted @ 2013-02-26 10:38 sherkey 阅读(244) 评论(0) 推荐(0)

导航