您的位置:首页 > 编程语言 > C语言/C++

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;}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: