#include <stdio.h>
void func(char*);
int main(int argc, char** argv)
{
char str[] ="My name is WeiGuan.";
printf("char array%x\n", str);
func(str);
printf("Hello, World!\n");
return 0;
}
void func(char* dest)
{
printf("dest address:%x\tdest value:%x\n",
&dest,
dest
);
}
从上面的例子中,我们可以发现,指针传递参数的时候,其实只是把指针指向的地址的值赋给函数里面的形参。
#include <iostream>
using std::cout;
using std::endl;
using std::hex;
void func(char* &);
int main(int argc, const char * argv[])
{
char p[] = "nihao";
char *c;
c = p;
cout << hex << &p << endl;
cout << hex << &c << endl;
func(c);
return 0;
}
void func(char* &dest)
{
cout << hex << &dest << " " << dest << endl;
}
而C++多了一种传递的方式----引用亦或称别名