【C++基础】 指针&字符串&数组

先贴代码,总结以后再写,和5中内存分配方式密切相关

PS: str 返回整个字符串,str[0],*str返回首字符h

char *strA(){
    char str[]="hello!"; //局部数组,局部变量,            str存在栈区
    return str;  //局部变量不能传值,估计会成为野指针
                //函数返回局部变量的地址,当被调用完成时,str就释放了,因此返回结果是不确定的且不安全的
}

char *strA2(){
    char *str = "hello2!";//字符串在常量区,            str在“全局”吗??应该是
                        //str 返回整个字符串,str[0],*str返回首字符h
    cout << *str <<str << str[0] <<endl;
    return str;
}

char *strA3(){
    static char str0[] = "hello3!!";//加了个static,    str由栈区-->静态区(即全局区)                        
    return str0;
}

 

转载于:https://www.cnblogs.com/zhangXH/p/3928355.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值