【无标题】string用法

#include<string>---c++

#include<string.h>---c

定义:

string s;

string可看做char c[n];可以用下标指向s字符串中的单个字符;

char c[2] = {'1','2'}; == string s("12"); == char* c = "12"; == string s = "12";

补充:

字符串数组 char c[3] = {'123'}会报错,因为需要第4个长度存结束符‘\0’,即char c[4] = {'123'};可行.或者用char c[3] = {'1','2','3'};(麻烦)或者char c[] = "123";不先声明长度。

char* c = ”123";在c里可行,c++报错。

转换:

1.转化成char[],可以用strcpy_s ,或者遍历字符串的方式
string            转char[] :    strncpy_s(a, string.c_str(), N);  也可以用上图的遍历string
const char *  转char[] :    strcpy_s(a, const char *);          也可以用上图的strncpy_s
char *            转char[] :   strcpy_s(a,  char *);                   也可以用上图的strncpy_s

2.char[]变成别的,直接赋值

3.转化为std::string 最简单,可以直接=, 因为string太强大了,把=号重载了很多遍

4.const char *转化到 char * 使用const_cast<char *>

5.string转化为char * 用c_str()

字符串:

string s2("123");

string 数组:

string s[100];

一个单位存一个string;

用srtcmp()比较string 类型时要把string转换为const char*

即 const char* a=s[i].c_str();  const char* a=s[i].c_str();

strcmp(a, b);可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值