• 初始String


    --------------siwuxie095

       

       

       

       

       

       

       

    使用频繁操作繁琐的数据有哪些?

       

       

       

       

    对于基本数据类型:int、char、bool、float、double,虽然

    使用频繁,但是操作简单

       

       

       

       

    只有 char 类型的数组,即 字符串,它使用频繁,但操作时却

    缺乏一种简单有效的手段,往往只能用一系列的函数来应付

       

    如:strstr、strlen、strcat、strcpy、strcmp、strncpy、strncmp

       

    用的多了就会发现特别的麻烦,有的时候简直就令人抓狂 …

       

       

       

       

       

    于是便有了 string 类型来解放一切 …

       

       

       

       

    看一个用到 string 的例子:

       

    注意:使用 string 时需要将头文件 #include <string> 包含进去

       

       

       

    string 的初始化方式:

       

       

       

       

    string 的常用操作:

       

       

       

       

    针对 s1+s2 这种字符串连接需要特别注意:并不是所有字符串之间都可以进行连接

       

    「只有 string 变量与双引号引起的字符串进行连接才是合法的」

       

       

       

       

    程序:

       

    #include <stdlib.h>

    #include <iostream>

    #include <string>

    using namespace std;

       

    /******************************************************************/

    /* 题目描述:

    1.提示用户输入输入姓名

    2.接收用户的输入

    3.然后向用户问好,hello xxx

    4.告诉用户名字的长度

    5.告诉用户名字的首字母是什么

    6.如果用户直接输入回车,那么告诉用户的输入为空

    7.如果用户输入的是admin,那么告诉用户的角色是一个管理员*/

    /******************************************************************/

       

    int main(void)

    {

    string name;

    cout << "Please input your name:";

    //因为要判断用户输入是否为空,不能简单使用 cin

    //需要使用 getline()

    getline(cin, name);

    if (name.empty())

    {

    cout << "input is null.." << endl;

    system("pause");

    return 0;

    }

    if (name == "admin")

    {

    cout << "you are an administrator" << endl;

    }

       

    cout << "hello " + name << endl;

       

    //name.size()是一个整型所以不能用加号连接

    // "your name's length:" + name.size() 是错误的

    cout << "your name's length:" << name.size() << endl;

       

    //name[0] 的返回值是一个char类型的(只拿到一个字符)所以不能用加号连接

    // "your name's first letter is:" + name[0] 是错误的

    cout << "your name's first letter is:" << name[0] << endl;

    system("pause");

    return 0;

    }

       

       

    vs2013中:

       

       

       

       

       

       

       

       

       

       

       

    【made by siwuxie095】

  • 相关阅读:
    DOM解析和SAX解析对比
    SAX解析示例代码和原理
    xPath技术
    dom4j工具对XML写入修改删除操作实现
    Dom4j工具j解析XML原理和示例代码
    Servlet的多线程并发问题
    Servlet的自动加载
    servlet缺省路径
    线程安全问题出现 的根本原因和解决方案
    9.12測试(四)——測试笔
  • 原文地址:https://www.cnblogs.com/siwuxie095/p/6700884.html
Copyright © 2020-2023  润新知