C++,字符数组,赋值问题,语法练习
2012-10-08 00:29
330 查看
相关知识点 : C++ Prime P35,P97,P113
#include <iostream>#include <string>using namespace std;void main(){//情况1: 当个元素赋值,没有赋结束符,则输出出现非法字符char a[30];a[0]='A';a[1]= 'B';cout<<"a ="<<a<<endl;//情况2: 用聚合方式赋值,余下的自动为空字符;只能赋值9个元素,最后一个空着,就自动为'\0';char b[10] = {'A','B'}; // 其余元素自动为 空字符 '\0',也就是字符串的结束符.if(b[2]=='\0') cout<<"yes b[2] 为空字符"<<endl; //确实是空if(b[3]=='\0') cout<<"yes b[3] 为空字符"<<endl;cout<<b<<endl;//情况3:没有空字符,乱码. C++ Prime P97,P113char ca1[] ={'C','+','+'}; //cout<<ca1<<endl;char ca2[] = {'C','+','+','\0'}; // 显式加上 空字符, 无乱码,OK// 情况4: 动态数组,元素个数不确定, 直接用 字符串 (双引号) 赋值,就不会有非法字符.char c[] = "hello world";cout<<c<<endl;//---- 在C++ 中 如果要使用C风格字符串,则这么来: cont char *cp = "xxx yyy zzz";const char *cp = "1234 56789";int cnt =0;while (*cp) {++cp;cnt++;}cout<<"字符串个数 cnt = "<<cnt<<endl;}
相关文章推荐
- [C语言]给一个二维字符数组赋值的问题
- c语言中,字符数组与字符串赋值问题
- 结构体中字符数组赋值字符串问题
- 关于字符数组赋值问题
- 字符数组赋值问题总结
- 一个字符数组赋值的问题
- 关于动态存储分配函数的调用,在已经过排序的数组中查找及删除内容的操作,余数的分析,删除字符数组中的空格,对链表的逆置,在源字符串中查找子字符串的个数,函数指针以及函数的调用,循环赋值带来的问题以及插入
- scanf能赋值字符数组,不能赋值给指针的问题
- C语言字符数组的赋值问题及比较
- C语言指针问题,初始化,赋值,以及字符数组,字符串常量等问题
- 关于字符数组赋值问题
- 数组中字符出现的次数问题
- C#编程中的Image/Bitmap与base64的转换及 Base-64 字符数组或字符串的长度无效问题 解决
- 为二维字符数组赋值
- C语言可以给字符数组赋值的方法
- 字符常量赋值问题
- 给字符数组赋值的方法
- c语言打印字符乱码和char *字符循环赋值时“段错误 (核心已转储)”问题解决
- 关于memcpy拷贝结构体、结构体数组到字符数组(字符串)的问题
- C语言 字符数组赋值的方法 整理