C++中汉字字符串的截取
时间:2020-06-11
本文章向大家介绍C++中汉字字符串的截取,主要包括C++中汉字字符串的截取使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
g++ main.cpp 进行编译。
为了解决限定长度的赋值, 如果出现半个中文,则采取截断措施,解决中文乱码问题。
#include <iostream> #include <string.h> #include <stdio.h> using namespace std; #define MAX_SIZE 32 int chinese_split(std::string str,int index) { if(index > str.size()) return 0; if((str[index]&0x80) == 0x80){ if((str[index-1]& 0x80) == 0){ return 1; }else{ int n = 1; while(((str[index-n] &0x80) == 0x80 )&&((str[index-n] &0x40) == 0)){ ++n; } return n; } }else{ return 0; } } void my_strcpy(char *dst, const char *src , int index , int count = 10){ if(strlen(src) > MAX_SIZE && index >4){ int n = chinese_split(src,index); cout<<n<<endl; strncpy(dst,src,index-n); }else{ strcpy(dst,src); } } int main(){ char a[] = "方案是ie以写文件的形式写下来,wifi热点模块在启动时会以读文件形式读取配置文件并且配置"; char b[MAX_SIZE]; cout<<"-----------"<<endl; for(int i=20;i<32; i++ ){ memset(b,0,MAX_SIZE); my_strcpy(b,a,i); cout<< b<<endl; } return 0; }
代码中,限定长度是32,大于32,拷贝长度为 i.
无论如何,这种方法解决了问题。哈哈!
原文地址:https://www.cnblogs.com/yuguangyuan/p/13093968.html
- Python常见数据结构整理 Python常见数据结构整理
- “共享洗车机”落户咸阳,你怎么看?
- 蒋涛——软件是一个非常特殊的产业,一旦进入就再难挣脱
- Pechkin:html -> pdf 利器
- C#执行XSL转换
- javascript:算法笔记
- spring boot 登录注册 demo (一)
- linux学习:CentOS、Mac上SSH的设置以及SceureCRT中的文件上传下载
- 中关村成为北京“高精尖”产业发展主阵地
- jquery-barcode:js实现的条码打印
- 页面json 格式化+颜色高亮
- Python 里 and、or 的计算规则
- Python中赋值、浅拷贝与深拷贝
- git 简易使用说明
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Ant-design-vue+vue-i18n实现前端国际化
- Mac OSX终端安装主题(oh my zsh)
- 谷歌浏览器油猴插件安装教程,让你的浏览器更加强大
- zabbix模块配置学习
- Windows下安装及使用NVM
- U盘上安装多个Linux发行版和PE
- ubuntu18.04部署python3、nginx项目
- CentOS8.x系统配置记录
- js根据经纬度换算行驶里程
- ubuntu18.04 安装docker
- COBBLER无人值守批量安装系统.md
- 使用VSCode 打包你的第一个flutter应用(安卓篇)
- KICKSTART无人值守批量安装系统.md
- Centos7-Firewall防火墙基础讲解
- 优酷iOS插件化页面架构方法