char*str 和 char str[]的分别
来源:互联网 发布:linux查看nvidia显卡 编辑:程序博客网 时间:2024/05/16 17:19
char *Str;Str="abcdef";
Str指向常量区,指向的内容不能改了
char Str[]="abcdef";
在栈区,可以改变
首先第一个指针形式的str指向一个字符串,这样指向以后就不能通过str对abcdef这个字符串修改了,但是你可以给str用别的字符串再赋值,这样他就指向了别的字符串,但是一旦指向某个字符串,就不能通过这个指针对字符串修改了。
第二种数组形式的str,其实数组名就是指针常量,也就是说一旦他初始化了,它指向的地址就固定了,就不能再用别的字符串赋值了(这就不同于指针形式的str),但是这个地址里放什么是可以改变的(指针形式的就不能改变了),比如说初始化之后在通过cin>>str改变数组的内容还是没有问题的。
char Str[]="abcdef";这种写法是没有问题的,这样不写数组大小但必须要对其初始化,如果没初始化就必须声明数组大小。
Str指向常量区,指向的内容不能改了
char Str[]="abcdef";
在栈区,可以改变
首先第一个指针形式的str指向一个字符串,这样指向以后就不能通过str对abcdef这个字符串修改了,但是你可以给str用别的字符串再赋值,这样他就指向了别的字符串,但是一旦指向某个字符串,就不能通过这个指针对字符串修改了。
第二种数组形式的str,其实数组名就是指针常量,也就是说一旦他初始化了,它指向的地址就固定了,就不能再用别的字符串赋值了(这就不同于指针形式的str),但是这个地址里放什么是可以改变的(指针形式的就不能改变了),比如说初始化之后在通过cin>>str改变数组的内容还是没有问题的。
char Str[]="abcdef";这种写法是没有问题的,这样不写数组大小但必须要对其初始化,如果没初始化就必须声明数组大小。
0 0
- char*str 和 char str[]的分别
- char *str和char str[]的区别
- char str[] 和 char *str 的区别
- char str[] 和 char *str 的区别
- char str[] 和 char *str 的区别
- char str[] 和 char *str 的区别
- char str[] 和 char *str 的区别
- char str[] 和 char *str 的区别
- char str[] 和 char *str 的区别
- char str[]和char* str的区别
- char str[] 和 char *str 的区别
- char str[] 和 char *str的区别
- char *str 和 char str[]的区别
- char* str和char str[]的区别
- char str[] 和 char *str 的区别
- char str[] 和 char *str 的区别
- char str[] 和 char *str 的区别
- char* str和char str[]的区别
- python 格式化输出
- 创建本地网络服务名配置
- uva 10308(无根树变有根)
- ios工程中使用sqlite3方法
- css文件中引入CSS文件、js文件中引入js文件
- char*str 和 char str[]的分别
- 2015年 代做安卓毕业设计 Android毕业设计
- sphinx搜索引擎索引结构优化
- [2015年1月][01~11][cocos2d塔防游戏学习][设计模式学习]
- c#学习笔记——抽象类、抽象方法、抽象属性
- 7 两个栈模拟队列,两个队列模拟栈
- Linux 单机启动多个mysql 实例(mysqld_multi )
- 上帝的乐园
- 1078. Hashing (25)