C-串的正确赋值、复制、修改、比较、连接等方式。

 #include<iostream>
#pragma warning(disable: 4996)//这一句是为了解决“strrev”出现的警告
using namespace std;
int main()
{
char* s1 = "Hello ";
char* s2 = "";
char a[];
strcpy(a,s1);
cout << (strcmp(a, s1) == ? "" : " not") << "equal\n";
cout << strcat(a, s2) << endl;
cout << strrev(a) << endl;
cout << strset(a, 'c') << endl;
cout << (strstr(s1, "ell") ? "" : "not ") << "found\n";
cout << (strchr(s1, 'c') ? "" : "not ") << "found\n";
cin.get();
return ;
}

运行结果:

下面进入string:

string是一种自定义的类型,它可以方便地执行C-串不能直接执行的一切操作。它处理空间占用问题是自动的,需要多少,用多少,不像字符指针那样,提心吊胆于指针脱钩时的空间游离。

 #include<iostream>
#include<string>
#include<algorithm>
using namespace std;
int main()
{
string a,s1 = "Hello ";
string s2 = "";
a=s1;//复制
cout << (a==s1 ? "" : " not") << "equal\n";//比较
cout << a + s2 << endl;//连接
reverse(a.begin(), a.end());//倒置串
cout << a << endl;
cout << a.replace(, , , 'c') << endl;//设置
cout << (s1.find("ell")!=- ? "" : "not ") << "found\n";//查找串
cout << (s1.find("c") != - ? "" : "not ") << "found\n";//查找字符
cin.get();
return ;
}

运行结果:

C++ code:char pointers and char arrays(字符指针与字符数组)的更多相关文章

  1. c字符指针与字符数组的区别

    1.定义 char *pchar;  //定义了指针,没赋值之前不能使用.如果:printf("*pchar:%c\n",*pchar); 出现段错误Segmentation fa ...

  2. 字符串赋值给字符指针(char *a="hello")的正确理解方式

    对于语句  char *a="hello"; 对于这个声明方式,会造成的误解是:声明了一个字符指针(它会指向一个位置),将“字符串”赋值给 指针表达式"*a"所 ...

  3. c++字符指针

    对于C/C++中的 字符指针和字符数组,总是在碰到的时候无法确定而不得不现场测试,来确定末尾是否包含'\0',函数到底如何使用等等.真是劳民伤财,现在总结一下: 字符指针的赋值 (1)指向一个字符串常 ...

  4. Delphi的字符(Char),字符串(String),字符串指针(PChar),字符数组arrayofchar(来自http://delphi.cjcsoft.net/论坛)

    Delphi有三种类型的字符: AnsiChar这是标准的1字节的ANSI字符,程序员都对它比较熟悉. WideChar这是2字节的Unicode字符. Char在目前相当于AnsiChar,但在De ...

  5. 字符指针unsigned char *ch_p

    指向类型为unsigned char的指针变量叫字符指针. 例如: unsigned char ch = 'a'; unsigned char *ch_p = &ch;那么指针变量ch_p就是 ...

  6. C# 接收C++ dll 可变长字节或者 字符指针 char*

    网络上查找到的几乎都是 需要提前固定知道 接收字符(字节)数据的大小的方式,现在的数据大小方式 不需要提前知道如下 思路: 1 .C++,返回变长 指针或者字节 的地址给C# 接收,同时返回 该地址的 ...

  7. 【C/C++】字符数组:char,char*,char a[], char *a[], char **s 的区别与联系/const char*和char*的区别

    一.char,char*,char a[], char *a[], char **s 的区别与联系 C语言中的字符串是字符数组,可以像处理普通数组一样处理字符串. 可以理解为在内存中连续存储的字符. ...

  8. char str[]和char *str的区别

    1.http://blog.csdn.net/szchtx/article/details/10396149 char ss[]="C++";  ss[0]='c';        ...

  9. char *c和char c[]区别

    char *c和char c[]区别 问题引入:在实习过程中发现了一个以前一直默认的错误,同样char *c = "abc"和char c[]="abc",前者 ...

随机推荐

  1. python---cookie模拟登陆和模拟session原理

    cookie模拟登陆: import tornado.web class IndexHandler(tornado.web.RequestHandler): def get(self): #self. ...

  2. java 中如何声明线程安全的集合 set, map 和list【转】

    线程安全的集合 引用自 http://blog.sina.com.cn/s/blog_508938e10102v1ig.html //make thread-safe list List MyStrL ...

  3. web4.0基本配置

    const path = require('path');//引入路径包 const HWP = require('html-webpack-plugin');//引入自动产出html包 const ...

  4. node.js 笔记

    教程总结笔记: 学习网站:http://www.runoob.com/nodejs/nodejs-install-setup.html Node.js 中文网及安装文件下载: http://nodej ...

  5. vue自学入门-3(vue第一个例子)

    1.安装后打开8080端口,http://localhost:8080/#/ 2.进入项目目录 2.默认路由 3.修改文件index.js 将Import HelloWorld一句修改为 import ...

  6. 20155332 2016-2017-2 《Java程序设计》第5周学习总结

    学号 2016-2017-2 <Java程序设计>第X周学习总结 教材学习内容总结 1.Java中的所有不正常类都继承于Throwable类.Throwable主要包括两个大类,一个是Er ...

  7. js取最大最小值

    链接:https://www.cnblogs.com/waitingbar/p/4323600.html js取最小最大值--Math.min().math.max() 一.Math.min() 返回 ...

  8. [C++]指针/指针数组/数组指针/多维指针/单值指针/多值指针

    int main(){ //单值指针(指向单个值得指针,类同普通变量) int *px = new int; *px = 100; printf("%d",*px); delete ...

  9. CSS进阶之SASS入门指南

    CSS进阶之SASS入门指南         随着跟着公司学习项目的前端的推进,越来越对好奇了许久的SASS垂涎欲滴,哈哈,可能这个词使用不当,没有关系,就是对SASS有一股神秘的爱!好了,闲话不多说 ...

  10. H - Repeats (重复最多子串的次数)

    题目链接:https://cn.vjudge.net/contest/283743#problem/H 题目大意:T组数据,给你一个字符串,然后让你求这个字符串的重复最多子串的次数. 具体思路:论文题 ...