字符串数组与字符串指针数组

1,首先,不论是局部,静态还是全局数组都必须在定义的时候初始化,否则就得通过其他方式,eg 循环操作,字符串处理函数strcpy()

2,附以下代码: 主要完成将”I am from china ”倒置为”china from am I”,

最开始编写时,将str定义为字符串数组,怎么都出不来结果。半天才发现应该用字符串指针数组

3,那么问题来了,字符串数组和字符串指针数组有什么区别

举个例子  char a[] = "hello";   //字符串数组,存放的是字符

                char *b[] = {"hello", "world"};//字符串指针数组,存放的是指针即元素地址,指针指向其中的元素

字符数组初始化  char a[10] ="hello";//字符串以'\0'结尾,这种方式系统会自动在数组未填值的地方添加'\0'

                           char b[] = {'h', 'e' , 'l', 'l', '\0'};//类似于初始化整型数组,必须要手动在后面添加'\0'

所以当我 这样定义时char a[] = {"hello", "world"};,报错str中有多余的元素。

扫描二维码关注公众号,回复: 2635217 查看本文章

猜你喜欢

转载自blog.csdn.net/weixin_42720316/article/details/81229575