被调函数的计算结果在离开函数大括号后就已经不在了,
回到主函数的变量p并不是调用函数后的计算结果,p仍然是
数组b的首地址,所以输出是a.
char
*p//定义全局变量
point(char
*c)
{
p=c+3
}//全局变量返回计算结果
main()
{
char
b[4]={'a','b','c','d'}
p=b//p为数组首地址
point(p
)//调用函数,地址加3
printf("%c\n
",
*p)//输出为b[3]
}
(char*)i将i强制转换为字符类型,将值赋给point,赋值后输入指针的值为i的值(具体结果要看是以什么格式输入)如果point为指针,这种赋值能通过编译,但没有实际意义。