函数之间传递char *类型的参数,需要注意传递的是地址, 还是字符串;
两者的目的不同:
1.如果是地址则是对这个原数据进行修改操作;
2.如果是字符串,则是使用该参数;
#include <stdio.h>
void Prin_1(char *pcName)
{
printf("Prin : %s\n", pcName);
printf("Prin : 0x%x\n", pcName);
}
void Prin_2(char *pcName)
{
printf("prin_2 : 0x%x\n", pcName);
*pcName = "luojun\n";
}
int main()
{
char *name = "leiweizhe";
printf("%s\n", name);
printf("0x%x\n", name);
printf("0x%x\n", &name);
Prin_1(name);
Prin_2(&name);
printf("%s\n", name);
return 0;
}
leiweizhe
0x40402f
0x61fe18
Prin : leiweizhe
Prin : 0x40402f
prin_2 : 0x61fe18
luojun
Process returned 0 (0x0) execution time : 0.068 s
Press any key to continue.