美文网首页
字符串操作笔记

字符串操作笔记

作者: 无刻 | 来源:发表于2015-10-14 21:36 被阅读0次

一、字符串截取前n个字符

char src[] = "helloworld"
char dst[500];
int n;
strncpy_s(dst, src, n)

将字符串src的前n个字符复制到字符串dst中。且能保持dst的字符串长度为n而不是定义的500

二、复制字符串后n个字符到新字符串

char a[] = "helloworldhelowold";
char b[500];
int n = 5;
strcpy(b, a + (sizeof(a) - n - 1));
cout<<sizeof(a)<<endl;
cout<<b<<endl<<strlen(b);

输出为

19
owold
5

三、一种操作字符串长度的方法

来源:漫谈递归:字符串回文现象的递归判断
自定义函数时,如果其参数为数组,其实在函数内数组名退化成指针了,因此在函数内无法获得数组的长度。因此,一般采取的方法是:在main()函数内获得数组长度后,把长度也当作自定义函数的参数传入。假设定义的新函数,如文中例子里的函数,为is_palindereme(char *str, int n),其数组及其长度n = (int)strlen(str);同时作为函数的参数。
需要取字符串中的某一段时,采用is_palindereme(str+1, n-2)的方法即可,相当于数组的头和尾都去掉了。调整str加和n减的数即可获得不同位置不同长度的新数组。

四、由指针创建动态数组

一维:

char *p = new char[viriable];    //常规数组的大小只能用常量定义

二维

方式1:

char *array = new char[x * y];     //x行y列
char **array2; 
array2 = new char *[x]; 
for(int i = 0;i < x;++i)     //调用时直接array2[i][j]即可
array2[i] = array + i * y;    //需用作函数参数时:int function(char **str)

输入:

for(int i = 0; i < x; ++i)    //x为行数
{
    cin>>array2[i];    //回车输入下一行
}

方式2,由一维数组模拟二维数组:

char *array = new char[x * y];     //x行y列
*(array + i * y + j);    //调用array[i][j]

相关文章

  • python学习笔记(三)字符串

    个人笔记,仅供参考 三、使用字符串 1、字符串基本操作 所有的标准序列操作都适用于字符串,但是字符串不可变,所以不...

  • 【Python基础】3.字符串

    本篇笔记知识点:-修改字符串字符串:修改大小写,拼接增加/删除空白下标&切片其他字符串常用操作 字符串 字符串:一...

  • python学习笔记18_字符串相关操作

    python 笔记18 1.字符串简单操作 1.1 重复输出字符串 1.2 通过索引获取字符串字符 通过索引获取字...

  • Golang 学习笔记(03)—— 字符串操作

    本文为转载,原文:Golang 学习笔记(03)—— 字符串操作 1、Contains func Contains...

  • JavaScript笔记

    JavaScript笔记js的数据类型(6种)js的==和===字符串的操作数组的操作Math对象的操作JSON操...

  • MySQL 学习笔记

    MySQL 学习笔记 数据库操作 表的操作 数据操作 字符集编码 数据类型(列类型) 1. 数值类型 2. 字符串...

  • Python3.5 笔记——第4章 字符串

    Python3.5 笔记 第四章 字符串 基本操作 字符串是不可改变的。字符串的定义直接用引号就可以了,跟java...

  • Python字符串高端操作

    字符串骚操作 字符串优雅操作

  • Python初学(十)

    这章学习下字符串的操作。 字符串的操作 字符串操作符: 针对字符串,Python语言提供了几个基本操作符 字符串处...

  • C++抑或处理做个记录

    笔记,省的忘了。毕竟对这个不熟 根据字符串长度按位抑或,可以做简单加密操作

网友评论

      本文标题:字符串操作笔记

      本文链接:https://www.haomeiwen.com/subject/cugocttx.html