1 什么是字符串?
字符串是以空字符(\)结尾的字符数组。
空字符的assii码为:0, 空格的ascii码为32
2 \0的作用
'\0'是一个空字符标志,它的ASSII码为0,C++有好多处理字符串的函数,都以'\0'为结束标记。
也就是以空字符为结束标记,比如cin,cout。它们都以空字符为结束标记,他们在遇到空字符后将会停止输入或输出。 3 cin.ignore()
cin.ignore(a,ch) 从输入流(cin)中提取字符,提取的字符被忽略(ignore),不被使用。每抛弃一个字符,
它都要计数和比较字符:如果计数值达到a或者被抛弃的字符是ch,则cin.ignore()函数执行终止;否则,它继续等待
默认参数为cin.ignore(1,EOF),即把EOF前的1个字符清掉,没有遇到EOF就清掉一个字符
它的一个常用功能就是用来清除以回车结束的输入缓冲区的内容,消除上一次输入对下一次输入的影响.
4 cin.get(char[], n) 的结束标记是 \n 换行符。因此遇到空白字符(空格,tab)不会结束。同时在输入结束后,也就是用户输入第一个回车后,cin.get自动为
当前接受的输入的数组添加字符串结束标记 \0, 因此它实际保存的有效字符是它的第二个参数减1. 5 cin遇到不可见字符(制表符和空格)和空字符('\0')就停止输入。
cout则只是遇到空字符才停止输出。0 6 char man[] = {"a "} 是一种简写,隐含了字符串结束标记\0 char m[] = {'a', 32, 'b', '\0'}; 7 计算字符串长度时,不要忘记最后的空字符'\0' strlen(char型字符串)是计算可见字符的长度(不包括 ascii 0) sizeof(是计算字符串的长度)(含asscii0)
#include <iostream>
using namespace std; int main()
{
{
cout << "字符数组" << endl;
char man[] = {'J', 'a', 'c', 'k'};
cout << man << endl;
cout << "----------------" << endl;
} {
cout << "字符串" << endl;
char man[] = {'J', 'a', 'c', 'k', '\0'};
cout << man << endl; } {
cout << "空字符的作用" << endl;
char man[];
cin >> man;
cout << man << endl;
} {
char man[];
cin.ignore(, '\n');
//cin.ignore();
cin.get(man, );
cout << man << endl;
} {
char man[];
cin.ignore(, '\n');
//cin.ignore();
cin.get(man, );
cout << man << endl;
} {
char m[] = {'a', , 'b', '\0'};
cout << m << endl;
cout << "----------------" << endl;
} {
char man[] = {"a b"};
cout << man << endl;
} {
char man[] = {"hello world"};
cout << man << endl;
cout << "strlen(man)=" << strlen(man) << endl;
cout << "sizeof(man)=" << sizeof(man) << endl;
man[] = '\0';
cout << "strlen(man)=" << strlen(man) << endl;
cout << "sizeof(man)=" << sizeof(man) << endl;
} return ;
} /* vim: set ts=4 sw=4 sts=4 tw=100 */

18:字符串-char型字符串的更多相关文章

  1. char型字符串(数组)与string型字符串 指针与引用

    一.常指针: int *const p;    //指针不可改变,但是指针指向的数据可以改变. 指向常量的指针: const int *p;    //指针可以改变,但是指针指向的数据不可以改变. 指 ...

  2. 306573704 Char型和string型字符串比较整理(转)

    1.赋值 char赋值: char ch1[] = "give me"; char ch2[] = "a cup"; strcpy(ch1,ch2); cout ...

  3. Char型和string型字符串比较整理

    1.赋值 char赋值: char ch1[] = "give me"; char ch2[] = "a cup"; strcpy(ch1,ch2); cout ...

  4. char型指针和字符串字面量和字符数组

    1.当一个char型指针指向一个字符串字面量(也就是常量字符串)时,该指针必须由const修饰,否则,系统会给出deprecated(不赞成)的警告.原因是:字符串字面量不可改变,当它被一个非cons ...

  5. unsigned char 转字符串:

    通常送显示的都是字符串,对于int long float转字符串有对应的函数,还有sprintf进行格式输出,对于嵌入式和单片机大多都用unsigned char型变量,转字符串需要自己编写函数,需要 ...

  6. C语言---整型字符串转换

    C语言提供了几个标准库函数,能够将随意类型(整型.长整型.浮点型等)的数字转换为字符串.下面是用itoa()函数将整数转 换为字符串的一个样例: # include <stdio.h>   ...

  7. C语言入门(18)——数组与字符串

    用来存放字符量的数组称为字符数组.字符串可以看作一个数组,它的元素是字符型的. 字符数组的定义 形式与前面介绍的数值数组相同.例如: char c[10]; 由于字符型和整型通用,也可以定义为int ...

  8. 31:字符串p型编码

    31:字符串p型编码 查看 提交 统计 提问 总时间限制:  1000ms 内存限制:  65536kB 描述 给定一个完全由数字字符('0','1','2',…,'9')构成的字符串str,请写出s ...

  9. 字符串char vchar性能对比补充

    Value CHAR(4) Storage Required VARCHAR(4) Storage Required '' '    ' 4 bytes '' 1 byte 'ab' 'ab  ' 4 ...

随机推荐

  1. Jersey(1.19.1) - Client API, Using filters

    Filtering requests and responses can provide useful functionality that is hidden from the applicatio ...

  2. HDOJ2029Palindromes _easy version

    Palindromes _easy version Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Jav ...

  3. Android对象类系列化public class User implements Parcelable

    package com.gaojinhua.android.activitymsg; import android.os.Parcel; import android.os.Parcelable; / ...

  4. Android Device Orientation

    最近在处理相机拍照的方向问题,在Android Device的Orientation问题上有了些疑问,就顺便写个Demo了解下Android Device Orientation究竟是怎么个判断. A ...

  5. 和阿文一起学H5——如何搜到超酷的GIF素材

    方法一: 1.条件搜索法 关键词 + gif 2.dribbble全球顶点设计师殿堂,里面有好多大师神作. https://dribbble.com/ 3.pinterest,号称灵感的春药的网站,收 ...

  6. android自学笔记(1):android简介

    Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发.尚未有统一中文名称,中国大陆地区较 多人使用“安卓 ...

  7. 一种好的持久层开发方法——建立BaseDao和BaseDaoImpl

    使用hibernate开发持久层时,我们会发现:虽然entity类的含义和需求不同,其对应的Dao层类对应的方法也是不同的.但是有许多方法操作确实相同的.比如实体的增加,删除,修改更新,以及许多常用的 ...

  8. 使用WM_PASTE 和 WM_CHAR 消息时中文乱码总结

    当我们需要设置编辑框显示文本的时候,如果其它方式无法实现,可以试试WM_PASTE 和 WM_CHAR. 但使用这两种消息很容易出现中文乱码的情况,这一般是编码问题,可参考如下几点: 1,中文应采用U ...

  9. ZigBee协议学习之网络层

    ZigBee的体系结构中,底层采用IEEE 802.15.4的物理层和媒介层,再次基础上,ZigBee联盟建立了自己的网络层(NWL)和应用层框架. ZigBee网络层的主要功能包括设备的连接和断开. ...

  10. Qt5.4生成安装包过程

    所需工具: 1.  HM NIS Edit 2.  windeployqt.exe 第一个工具需要自己去网上下载,第二个工具可以在qt安装目录下找到:D:\qtopengl\5.4\mingw491_ ...