[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 ...
随机推荐
- 关于windows 下每次打开IE 8都弹出欢迎使用Internet Explorer 8 弹窗的关闭方法
今天笔者在安装完windows 操作系统后,发现了一个问题,即每次打开IE 8浏览器,都会弹出一个欢迎界面: 弹窗标题为:设置windows Internet Explorer,具体内容如下图所示: ...
- react Context
import React, { useState, useEffect, useContext } from "react"; import axios from "ax ...
- bypass safedog upload
这里附上两个payload: Content-Disposition: form-data; name=”up_picture”; filename=”[回车]1.php” Content-Dispo ...
- TCP、UDP详解与抓包工具使用
参考:https://www.cnblogs.com/HPAHPA/p/7737641.html TCP.UDP详解 1.传输层存在的必要性 由于网络层的分组传输是不可靠的,无法了解数据到达终点的时间 ...
- java 三大框架 struct2部分 实现增删该查操作
1.三层架构 表现层:接收和处理请求. MVC模型:它是一个表现层模型. 业务层:处理程序业务需求. 持久层:对数据库操作的.2.MVC模型 M:Model ...
- java学习(一)--- 基础语法
学习内容来 自菜鸟教程 http://www.runoob.com/java/java-object-classes.html Java基础 Java:一个Java程序可以认为是一系列的对象组合, ...
- jquery easyui教程[申明:来源于网络]
jquery easyui教程[申明:来源于网络] 地址:http://wenku.baidu.com/view/570e4d4533687e21af45a941.html
- Java随机字符串:随机数字字符串,工具类
Java中生成随机数,字符串的工具类 1. 调用方法需要传入生成字符串的长度和需要的类型 生成随机数字 生成随机字母字符串 生成随机字符串+数字等 ......... 2. 总共8种类型,具体看工具类 ...
- js之常见问题--for循环中为什么点击总是弹出最后一个i
首先看看点击不同li标签时,弹出li的索引值对应的结果 HTML: <ul> <li>0</li> <li>2</li> <li> ...
- jquery基础学习之AJAX篇(五)
理解不深,只知道这么用 jquery 中ajax的请求方法 $.ajax({ url:‘http://...’, //请求网址 type:'GET', //请求方法 success:function( ...