常用函数---字符串操作

C语言:

strcpy:复制char

strcat:连接char

strlen:长度

strcmp:比较是否一样

strstr: 查找字符

strncpy: 复制前几个

strtok:分割字符串,等价于Java中的split函数  (参考:https://blog.csdn.net/qq_16334327/article/details/80922417)

strrev:字符串反转

sprintf:格式化输出到字符串,注意区分printf是格式化输出到屏幕;fscanf()  格式化的从文件中读取与 fprintf() 格式化的输出到文件中;sprintf 跟printf 在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出

printf:

fprintf:

isdigit:判断字符是否是数组,(字符函数库cctype、ctype.h)

isalpha:判断字符是否是字母,(字符函数库cctype、ctype.h)

ispunct:判断字符是否是标点符号,(字符函数库cctype、ctype.h)

isspace:判断字符是否是空格,(字符函数库cctype、ctype.h)

 

C++(string)

length:求字符串长度

size:与length功能一致,length是来自早期的string类,size函数为了提供STL容器兼容性而添加的

find:查找字符串或字符在字符串中首次出现的索引,没找到返回string::npos

find_first_of:查找字符或字符串首次出现的位置

find_last_of:查找字符或字符串最后出现的位置

find_first_not_of:找第一个不包含在参数中的字符

 

find_last_not_of:找最后一个不包含在参数中的字符

rfind:等同于find_last_of

substr:截取指定字符,substr有2种用法:
假设:string s = "0123456789";
string sub1 = s.substr(5);      //只有一个数字5表示从下标为5开始一直到结尾:sub1 = "56789"

string sub2 = s.substr(5, 3);  //从下标为5开始截取长度为3位:sub2 = "567"

equals:是否相同

contains:包含

split:分割字符串,返回的是一个String数组

isEmpty:是否为空

replace:替换指定字符,参考:https://blog.csdn.net/jiary5201314/article/details/52502516/

compare:用于比较两个string对象是否相等,相等返回0,注意:不可以用==来比较两个string,用==比较的是两者的地址,参考https://blog.csdn.net/Allenlzcoder/article/details/78254693

append:连接字符串,string s1 = "123"; string s2 = "456"; string s3 = s1 + s2;s3为123456,连接字符串还可以直接用+号,但是对编译器有要求,比如vs2010不行,vs2013可以

 

MFC

Find:查找

ReverseFind:倒着找

Left:取左边N个字符

Right:取右边N个字符

TrimLeft:去掉字符串左侧空格

TrimRight:去掉字符串右侧空格

Replace:替换字符,可以用来去掉字符串中间部分的空格,例:str.Replace(" ", "") 

参考:https://blog.csdn.net/zuoyefeng1990/article/details/52300328

Trim:去掉前后空格

在指定大小区域输出字符:

CRect rc;
CFont *pOldfont=pdc->SelectObject(&fn);            // 设置新字体
pDC->DrawText(L"一二三", rc, DT_CALCRECT);

获取指定字符串长、高(像素为单位)GetTextExtent函数(是CDC函数):

void CDrawPic::AccountStr(CDC *pdc,
                          int &width,        // 字串宽度(像素)
                          int &height,        // 字串高度(像素)
                          CString str,        // 字串
                          int size,            // 字体大小
                          CString font)        // 字体名
{
    CSize txtpot;
    CFont fn;
    fn.CreatePointFont(size,(LPCTSTR)font);
    CFont *pOldfont=pdc->SelectObject(&fn);            // 设置新字体

    txtpot=pdc->GetTextExtent(str);                    // 字串的长度像素
    width=txtpot.cx;
    height=txtpot.cy;
    pdc->SelectObject(pOldfont);
}

 

 

 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值