C/C++字符数组、字符串、字符串指针、字符串指针数组的声明和初始化操作(一维数组) #include <iostream> using namespace std; int main() { int i1, i2; cout << “字符数组-字符串 ”; char a01[6]={ ‘h’,’e’,’l’,’l’,’o’ }; char a01a[6] = “hello”; i1 = sizeof(a01); //静态初始化字符数组长度时,要大于等于字符素个数加一 //如果定义的长度刚好等于字符个数时,逐个字符赋值情形下会输出乱码,定义的长度增加后系统自动在末尾(未被赋值的空间)填充’0’这样输出就不会乱码; //如果定义的长度刚好等于字符个数时,直接赋值一个字符串情形会报错 printf(“a01的长度=%d ”, i1); printf(“方法一:声明并静态初始化(逐个字符赋值) a01 = %s ”,a01); printf(“方法一:声明并静态初始化(直接赋值一个字符串)a01a = %s ”, a01a); cout << ‘ ’; char a02[] = { ‘h’,’e’,’l’,’l’,’o’,’0′};//动态初始化且逐个字符赋值时在末尾必须加’0’字符,否则会输出乱码。 printf(“方法二:声明并动态初始化(逐个字符赋值)a02 = %s ”, a02); char a02a[] = “hello”;//动态初始化且直接赋值一个字符串时在字符串末尾由系统自动加上一个’0′ i2 = sizeof(a01); //动态初始化未指定字符数组长度时,逐个字符赋值的字符数组长度要算上末尾的’0′ //动态初始化未指定字符数组长度时,直接赋值一个字符串由于系统自动在末尾加上一个’0’,所以也要计算在内 printf(“a02的长度=%d ”, i2); printf(“方法二:声明并动态初始化(直接赋值一个字符串)a02a = %s ”, a02a); cout << ‘ ’; cout << “字符串指针-字符串 ”;//不适用于C++环境,需要修改项目-属性-C/C++-语言-符合模式-修改为“否”,才不会报错 char *a03= “hello”; printf(“使用字符串指针声明并初始化一个字符串 a03 = %s ”, a03); char *a04; a04 = “hello”; printf(“使用字符串指针先声明后初始化一个字符串 a04 = %s ”, a04); cout << ‘ ’; cout << ” 字符串指针数组 ”; cout << “方法一:声明+定义 ”; char *a05[5] = { “hello”,”nihao”,”good”,”ok”,”bye” };//方法一:声明+定义。长度5可以不指定 int i = 0; for (i = 0; i < 5; i++) printf(“a05[%d] = %s ,”, i, a05[i]);//字符串数组的输出方式 cout << ” 方法二:先声明后逐个定义字符串 ”; char* a06[5];//方法二:先声明,再逐个定义,此时字符串指针数组长度5不能省略,必须指定。 a06[0] = “hello”; a06[1] = “nihao”; a06[2] = “good”; a06[3] = “ok”; a06[4] = “bye”; for (i = 0; i < 5; i++) printf(“a06[%d] = %s , “, i, a06[i]); cout << ” This is my first C++ program”; return 0; }
2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/82239.html