[c/c++] programming之路(25)、字符串(六)——memset,Unicode及宽字符,strset
一、memset
#include<stdio.h>
#include<stdlib.h>
#include<memory.h> void *mymemset(void *p, int num, int len) {
char *px = (char *)p;
if (p == NULL)
return NULL;
while (len>)
{
*px = (char)num;
px++;
len--;
}
return p;//因为上述代码是对px进行操作,p的地址没有变化,所以最后返回p
} void main() {
char str[]= {"china is great"};
int num[] = { ,,,, };
float f[] = { 1.0,2.0,3.0,4.0,5.0 };
//memset(str, '\0', 40);
mymemset(str, '\0', );
printf("%s\n",str);
mymemset(num,,);
mymemset(f,,);
for (int i = ; i < ; i++)
printf("%d,%f\n",num[i],f[i]); system("pause");
}
二、Unicode及宽字符
#include<stdio.h>
#include<stdlib.h>
#include<locale.h>//设置本地化 void main0() {
//字符串可以显示汉字,字符不可以,字符连在一起%c%c可以输出一个汉字
char str[] = "你好中国";
char ch = '我';//char只能是字母,数字,字符
printf("%s\n", str);
printf("%c%c\n",ch);//ch无法正常输出‘我’,ASCII表里面没有‘我’
printf("%c%c\n",str[],str[]);//输出一个汉字,一个汉字占两个字节
system("pause");
} void main() {
wchar_t ch = L'我';//L宽字符或者宽字符串
printf("%d\n",sizeof(ch));//2个字节
setlocale(LC_ALL,"chs");//简体中文
wprintf(L"%wc\n", ch);//汉字当做一个字符 wchar_t str[] = L"我是一个好人ABC";
wprintf(L"%s\n", str);
system("pause");
}


#include<stdio.h>
#include<stdlib.h>
#include<Windows.h> void main() {
//MessageBox(0, "滴,不准用快播飙车!", "360安全卫士", 0);//使用多字节字符集时正常运行
//MessageBox(0,L"滴,不准用快播飙车!",L"360安全卫士", 0);//使用Unicode字符集时,需要加‘L’
MessageBoxA(, "滴,不准用快播飙车!", "MessageBoxA", );//无论是多字节还是Unicode,始终以多字节运行
MessageBoxW(, L"滴,不准用快播飙车!", L"MessageBoxW", );//无论是多字节还是Unicode,始终以Unicode运行
MessageBox(,TEXT("滴,不准用快播飙车!"),TEXT("TEXT"), );//自动适应多字节或者Unicode }



三、strset
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<string> void mystrset(char *p, char ch) {
while (*p)
{
*p = ch;
p++;
}
} void main() {
char str[] = "yincheng8848";
printf("before:%s\n", str);
//_strset(str, '8');//_strset标准C语言
mystrset(str, '');//_strset标准C语言
//_strset(str, '\0');//清空字符串
printf("after:%s\n", str);
system("pause");
}

[c/c++] programming之路(25)、字符串(六)——memset,Unicode及宽字符,strset的更多相关文章
- SQL注入之Sqli-labs系列第三十六关(基于宽字符逃逸GET注入)和三十七关(基于宽字节逃逸的POST注入)
0X1 查看源码 function check_quotes($string) { $string= mysql_real_escape_string($string); return $string ...
- 宽字符与Unicode (c语言 汉语字符串长度)
在C语言中,我们使用char来定义字符,占用一个字节,最多只能表示128个字符,也就是ASCII码中的字符.计算机起源于美国,char 可以表示所有的英文字符,在以英语为母语的国家完全没有问题. 但是 ...
- GO语言的进阶之路-Golang字符串处理以及文件操作
GO语言的进阶之路-Golang字符串处理以及文件操作 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们都知道Golang是一门强类型的语言,相比Python在处理一些并发问题也 ...
- Python之路【第六篇】:socket
Python之路[第六篇]:socket Socket socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字&quo ...
- [精校版]The Swift Programming Language--语言指南--字符串和字符 (转)
今天装了10.10.马上就可以实际编写swift了.还是很兴奋啊. 哈哈.字符串和字符是大家最容易打交道的.今天就转一下讲解swift中字符串和字符的文章.希望对大家有帮助. 原文地址:http:// ...
- 【python之路25】正则表达式
一.正则表达式简介 就其本质而言,正则表达式(或RE)是一种小型的.高度专业化的(在python中),它内嵌在python中,并通过RE模块实现.正则表达式编译成一系列字节码,然后由用C编写的匹配引擎 ...
- Learning ROS for Robotics Programming Second Edition学习笔记(六) indigo xtion pro live
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- 在论坛中出现的比较难的sql问题:25(字符串拆分3)
原文:在论坛中出现的比较难的sql问题:25(字符串拆分3) 最近,在论坛中,遇到了不少比较难的sql问题,虽然自己都能解决,但发现过几天后,就记不起来了,也忘记解决的方法了. 所以,觉得有必要记录下 ...
- python学习之路06——字符串
字符串 1.概念 字符串就是由若干个字符组成的有限序列 字符:字母,数字,特殊符号,中文 表示形式:采用的单引号或者双引号 注意:字符串属于不可变实体 2.创建字符串 str1 = "hel ...
随机推荐
- 牛客练习赛36B
唔在cf上做过,A题也做过,神仙说D题也是原题 这个题就是dp了.然后数组滚动一下,很显然能住遇到 i 只与 i-1 有关,所以还是挺好滚的. dp[i][j][k]表示到第I 天一共工作了J天连续 ...
- 查看集成环境 phpstudy 中 mysql 版本号
1. 打开面板 2.其他选项菜单 3. Mysql工具 4. mysql命令行 5.输入密码,回车.phpstudy mysql默认 root 6.运行 select version();
- mac iterm 提示符序列调整
mac终端提示符显示绝对路径太长了,能不能提示符不显示全路径呢?自定义提示符前缀呢? mac终端命令换行覆盖问题也顺带解决. 编辑~/.bash_profile export PS1='' 参数: 序 ...
- css hsla和rgba的区别
在CSS3里可以使用RGBA和HSLA两种色彩模式,都可以用来在设置颜色的同时也可以设置它的透明度.RGBA指的是“红色.绿色.蓝色和Alpha透明度”(Red-Green-Blue-Alpha),而 ...
- php 检测url
if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@ ...
- jquery 在页面上根据ID定位(jQuery锚点跳转及相关操作) 经典
1.锚点跳转简介 Edit 锚点其实就是可以让页面定位到某个位置上的点.在高度较高的页面中经常见到.比如百度的百科页面,wiki中的page内容. 我知道实现锚点的跳转有两种形式,一种是a标签+nam ...
- MUI学习01-顶部导航栏
建议:先看一下MUI注意事项 连接:http://ask.dcloud.net.cn/article/122 固定栏靠前 所谓的固定栏,也就是带有.mui-bar属性的节点,都是基于fixed定位的元 ...
- Java程序员必会英语单词
Complie: 编译 line: 行 variable: 变量 parameter: 参数 defaul: 默认 access: 访问 operation: 操作运算 member-variabl ...
- css学习_css文字阴影、盒子阴影
文字阴影和盒子阴影的用法: 多阴影
- Codeforces 1068 - A/B/C/D/E - (Done)
链接:http://codeforces.com/contest/1068 A - Birthday - [计算题] 题意:一共 $N$ 种硬币,我已经有其中 $K$ 种,我的 $M$ 个朋友每人送我 ...