当前位置: 首页 > news >正文

用html5做网站的心得体会个人网站首页模板

用html5做网站的心得体会,个人网站首页模板,量化交易网站开发,做素材网站存储C语言函数大全 本篇介绍C语言函数大全-- w 开头的函数 1. wcstok 1.1 函数说明 函数声明函数功能wchar_t *wcstok(wchar_t *wcs, const wchar_t *delim, wchar_t **ptr);用于将一个长字符串拆分成几个短字符串#xff08;标记#xff09;#xff0c;并返回第一个标记的地…C语言函数大全 本篇介绍C语言函数大全-- w 开头的函数 1. wcstok 1.1 函数说明 函数声明函数功能wchar_t *wcstok(wchar_t *wcs, const wchar_t *delim, wchar_t **ptr);用于将一个长字符串拆分成几个短字符串标记并返回第一个标记的地址wchar_t *wcstok(wchar_t *wcs, const wchar_t *delim);用于将一个长字符串拆分成几个短字符串标记并返回第一个标记的地址 参数 wcs 被分割的字符串delim 分割符字符串包含多个字符ptr 指向保存上次调用后的指针的指针首次调用时需赋值为 NULL 1.2 演示示例 windows 下两个参数的示例 #include wchar.h #include stdio.hint main() {wchar_t str[] LHello, huazie! This is wcstok demo.;wchar_t* token;// 第一次调用token wcstok(str, L ,.!?);while (token ! NULL) {wprintf(L%ls\n, token);token wcstok(NULL, L ,.!?);}return 0; }1.3 运行结果 2. wcstol 2.1 函数说明 函数声明函数功能long int wcstol(const wchar_t* str, wchar_t** endptr, int base);用于将字符串转换为长整型数字的函数 参数 str 要转换的字符串endptr 可选输出参数指向第一个不能转换成数字字符的字符的指针base 数字基数介于 2 和 36 之间 当 base 参数为 0 时wcstol() 函数会自动检测数字基数 如果输入字符串以 0x 或 0X 开头则将基数设置为 16。如果输入字符串以 0 开头则将基数设置为 8。如果不是这些情况则将基数设置为 10。 2.2 演示示例 #include stdio.h #include stdlib.h #include wchar.hint main() {//const wchar_t* str L123456;//const wchar_t* str L123a456;//const wchar_t* str La123456;const wchar_t* str L0xFF;wchar_t* endptr;long int num;//num wcstol(str, endptr, 10);num wcstol(str, endptr, 0);if (endptr str)printf(Invalid input.\n);elseprintf(The number is %ld\n, num);return 0; }注意 如果输入字符串无法转换为数字则 wcstol() 函数返回 0并将 endptr 指向输入字符串的起始位置。所以在使用 wcstol() 函数时建议检查 endptr 和 str 是否相同以确定输入是否有效。 2.3 运行结果 3. wcstoul 3.1 函数说明 函数声明函数功能unsigned long int wcstoul(const wchar_t* str, wchar_t** endptr, int base);用于将字符串转换为无符号长整型数字 参数 str 要转换的字符串endptr 可选输出参数指向第一个不能转换成数字字符的字符的指针base 数字基数介于 2 和 36 之间 当 base 参数为 0 时wcstol() 函数会自动检测数字基数 如果输入字符串以 0x 或 0X 开头则将基数设置为 16。如果输入字符串以 0 开头则将基数设置为 8。如果不是这些情况则将基数设置为 10。 3.2 演示示例 #include stdio.h #include stdlib.h #include wchar.hint main() {const wchar_t* str L123a456;wchar_t* endptr;unsigned long int num;num wcstoul(str, endptr, 10);if (endptr str)printf(Invalid input.\n);elseprintf(The number is %lu\n, num);return 0; }wcstoul() 函数的用法和 wcstol() 函数类似这里就不一一列举了 3.3 运行结果 4. wcsxfrm 4.1 函数说明 函数声明函数功能size_t wcsxfrm(wchar_t* dest, const wchar_t* src, size_t n);将一个 Unicode 字符串转换为一个 “可排序” 的字符串。该新字符串中的字符序列反映了源字符串中的字符顺序和大小写信息以便进行字典序比较。 参数 dest 存储转换后字符串的目标缓冲区src 要转换的源字符串n 目标缓冲区的最大长度 4.2 演示示例 #include stdlib.h #include stdio.h #include wchar.h#define ARRAY_SIZE 5int main() {const wchar_t* arr[ARRAY_SIZE] { LTom, LAlice, LHuazie, LDavid, LCharlie };wchar_t sorted_arr[ARRAY_SIZE][50];size_t i;for (i 0; i ARRAY_SIZE; i) {wcsxfrm(sorted_arr[i], arr[i], sizeof(sorted_arr[i]));}// 使用 qsort 对字符串数组排序qsort(sorted_arr, ARRAY_SIZE, sizeof(sorted_arr[0]), wcscmp);// 排序后输出wprintf(LSorted array:\n);for (i 0; i ARRAY_SIZE; i) {wprintf(L%ls\n, sorted_arr[i]);}return 0; }在上面的示例代码中 首先我们定义一个包含 5 个 Unicode 字符串的字符串数组 arr每个字符串代表一个人名然后定义一个大小为 5x50 的二维字符数组 sorted_arr用于存储排序后的字符串接着使用 wcsxfrm() 函数将每个 Unicode 字符串转换为可排序字符串并将结果存储在 sorted_arr 数组中再然后使用 qsort() 函数按字典序对 sorted_arr 数组中的字符串进行排序再接着使用 wprintf() 函数输出排序后的字符串最后结束程序。 4.3 运行结果 5. wctype 5.1 函数说明 函数声明函数功能wctype_t wctype(const char* property);用于确定给定的宽字符类别 参数 property 一个指向表示宽字符属性名称的字符串字面量的指针 常见的宽字符属性及含义如下 属性名称含义alnum字母数字字符alpha字母字符blank空格或水平制表符字符cntrl控制字符digit数字字符graph可打印字符除空格字符外lower小写字母字符print可打印字符punct标点符号字符space空白字符upper大写字母字符xdigit十六进制数字字符 返回值 如果指定的属性存在则返回相应的宽字符类型如果指定的属性不存在则返回零。 5.2 演示示例 #include stdio.h #include wchar.h #include wctype.hint main() {wchar_t ch L,;wctype_t punct_wt;// 获取标点符号字符类型punct_wt wctype(punct);// 判断指定的宽字符是否为标点符号if (iswctype(ch, punct_wt)) {wprintf(L%lc is a punctuation character.\n, ch);} else {wprintf(L%lc is not a punctuation character.\n, ch);}return 0; }注意 在调用 wctype() 函数时应该传递一个有效的宽字符属性名称作为参数详见 5.1 的表格所示。 5.3 运行结果 6. wctob 6.1 函数说明 函数声明函数功能int wctob(wint_t wc);用于将给定的宽字符转换为其对应的字节表示 参数 wc 一个宽字符值 返回值 如果能转换成功则返回返回与之对应的字节表示如果无法将给定宽字符转换为字节表示则返回 EOF。 6.2 演示示例 #include stdio.h #include wchar.hint main() {wchar_t ch L?;int byte;// 将 Unicode 字符转换为字节表示byte wctob(ch);// 输出字节值printf(Byte value of %lc: %d (0x%02X)\n, ch, byte, byte);return 0; }注意 在使用 wctob() 函数时应该确保系统当前的本地化环境和编码方式与程序中使用的字符编码一致。如果字符编码不一致可能会导致错误的结果或未定义行为。 6.3 运行结果 7. wctomb 7.1 函数说明 函数声明函数功能int wctomb(char* s, wchar_t wc);用于将给定的宽字符转换为其对应的多字节字符表示 参数 s 一个指向字符数组的指针wc 一个宽字符值 返回值 如果能转换成功则将 wc 转换为其对应的多字节字符表示存储在 s 指向的字符数组中如果 s 是空指针则不执行任何操作只返回转换所需的字符数;如果无法将给定宽字符转换为多字节字符表示则返回 -1 7.2 演示示例 #include stdio.h #include stdlib.h #include wchar.hint main() {wchar_t ch L?;char mb[MB_CUR_MAX];int len;// 将 Unicode 字符转换为多字节字符表示len wctomb(mb, ch);// 输出转换结果if (len 0) {printf(Multibyte representation of %lc: , ch);for (int i 0; i len; i) {printf(%02X , (unsigned char) mb[i]);}printf(\n);} else {printf(Failed to convert %lc to multibyte character.\n, ch);}return 0; }在上面的示例程序中wctomb() 函数被用来将 Unicode 字符 , 转换为其对应的多字节字符表示并将结果保存在字符数组 mb 中。然后程序输出每个字节的十六进制值。 注意 在使用 wctomb() 函数时应该根据当前的本地化环境和编码方式调整字符数组的大小。可以使用 MB_CUR_MAX 宏来获取当前编码方式下一个多字节字符所需的最大字节数从而确定字符数组的大小。 7.3 运行结果 8. wmemchr 8.1 函数说明 函数声明函数功能void* wmemchr(const void* s, wchar_t c, size_t n);用于在宽字符数组中查找给定的宽字符 参数 s 一个指向宽字符数组的指针c 要查找的宽字符值n 要搜索的字节数 返回值 如果找到了 c则返回指向该位置的指针否则返回空指针。 8.2 演示示例 #include stdio.h #include wchar.hint main() {const wchar_t str[] LHello, Huazie!;const wchar_t ch Lu;wchar_t* pch;// 在宽字符数组中查找给定的宽字符// 使用 wcslen() 函数来获取 str 的长度以指定要搜索的字节数 npch wmemchr(str, ch, wcslen(str));// 根据 pch来判断是否找到并输出结果if (pch)wprintf(LFound %lc at position %d.\n, ch, (int)(pch - str));elsewprintf(LCould not find %lc.\n, ch);return 0; }8.3 运行结果 9. wmemcmp 9.1 函数说明 函数声明函数功能int wmemcmp(const wchar_t* s1, const wchar_t* s2, size_t n);用于比较两个宽字符数组的前 n 个宽字符 参数 s1 待比较的宽字符串1s2 待比较的宽字符串2n 要比较的字节数 返回值 如果两个数组相等则返回零如果 s1 比 s2 小则返回负数如果 s1 比 s2 大则返回正数。 9.2 演示示例 #include stdio.h #include wchar.hint main() {const wchar_t str1[] LHello;const wchar_t str2[] LHuazie;int result;// 比较两个宽字符数组result wmemcmp(str1, str2, wcslen(str1));// 根据result来判断并输出结果if (result 0)wprintf(L%ls and %ls are equal.\n, str1, str2);else if (result 0)wprintf(L%ls is less than %ls.\n, str1, str2);elsewprintf(L%ls is greater than %ls.\n, str1, str2);return 0; }9.3 运行结果 10. wmemcpy 10.1 函数说明 函数声明函数功能wchar_t* wmemcpy(wchar_t* dest, const wchar_t* src, size_t n);用于将一个宽字符数组的前 n 个宽字符复制到另一个宽字符数组 参数 dest 目标宽字符串src 源宽字符串n 要复制的字节数 10.2 演示示例 #include stdio.h #include wchar.h #include string.hint main() {const wchar_t src[] LHello, Huazie!;wchar_t dest[20];// 将一个宽字符数组复制到另一个宽字符数组wmemcpy(dest, src, wcslen(src) 1);// 输出结果wprintf(LSource string: %ls\n, src);wprintf(LDestination string: %ls\n, dest);return 0; }注意 在使用 wmemcpy() 函数时应该确保目标数组有足够的空间来存储源数组的内容以免发生缓冲区溢出。在上面的示例中我们使用 wcslen() 函数来获取源数组的长度然后加上 1以包括字符串结尾的空字符 \0。 10.3 运行结果 11. wmemset 11.1 函数说明 函数声明函数功能wchar_t* wmemset(wchar_t* s, wchar_t c, size_t n);用于将一个宽字符数组的前 n 个宽字符设置为给定的宽字符值 参数 s 一个指向宽字符数组的指针c 要设置的宽字符值n 要设置的字节数 11.2 演示示例 #include stdio.h #include wchar.h #include string.hint main() {wchar_t str[20] LHello Huazie!;// 修改前wprintf(LBefore: %ls\n, str);// 将一个宽字符数组的所有元素设置为给定的宽字符值Xwmemset(str, LX, wcslen(str));// 修改后wprintf(LAfter : %ls\n, str);return 0; }在上面的示例程序中 首先我们定义一个宽字符数组 str并初始化为 Hello Huazie!;接着调用 wprintf() 函数输出修改之前的宽字符数组 str然后调用 wmemset() 函数将宽字符数组 str 的所有元素都设置为 ‘X’;最后再调用 wprintf() 函数输出修改之后的宽字符数组 str并结束程序。 11.3 运行结果 12. wprintf 12.1 函数说明 函数声明函数功能int wprintf(const wchar_t* format, ...);用于格式化输出宽字符字符串 参数 format 一个宽字符格式化字符串… 可选参数 12.2 演示示例 #include stdio.h #include wchar.hint main() {wchar_t name[] LHuazie;int age 25;double height 1.75;// 输出格式化的宽字符字符串wprintf(L%ls %d %.2f\n, name, age, height);return 0; }12.3 运行结果 13. write 13.1 函数说明 函数声明函数功能ssize_t write(int fd, const void* buf, size_t count);用于将数据写入文件描述符 参数 fd 要写入的文件描述符buf 写入数据的缓冲区count 写入的字节数 返回值 如果写入成功则返回实际写入的字节数如果出现错误则返回 -1。 13.2 演示示例 #include stdio.h #include unistd.hint main() {const char msg[] Hello, Huazie!\n;int nbytes;// 向标准输出流写入数据nbytes write(STDOUT_FILENO, msg, sizeof(msg) - 1);// 输出结果if (nbytes -1) {perror(write);return 1;}return 0; }注意 在使用 write() 函数时应该确保给定的文件描述符是有效的并且缓冲区中有足够的数据可供写入以免发生未定义的行为 13.3 运行结果 14. wscanf 14.1 函数说明 函数声明函数功能int wscanf(const wchar_t* format, ...);用于从标准输入流stdin读取格式化的宽字符输入 参数 format 一个宽字符格式化字符串… 可选参数 14.2 演示示例 #include stdio.h #include wchar.hint main() {wchar_t name[20];int age;// 从标准输入流读取格式化的宽字符输入wprintf(LPlease nput your name and age: );wscanf(L%ls %d, name, age);// 输出结果wprintf(Lname: %ls age: %d\n, name, age);return 0; }14.3 运行结果
http://www.w-s-a.com/news/851710/

相关文章:

  • 网站如何优化流程企业网站管理系统视频教程
  • 我想克隆个网站 怎么做贵州住房和城乡建设厅官网
  • 网站建设项目前景上海今天新闻综合频道
  • 做网站推销的如何谈客户wordpress怎么做商城
  • 摄影素材库网站服装页面设计的网站
  • 如何用国外网站做头条做个游戏app的费用大概多少
  • 网站 形象入口页福州网站建设网络公司排名
  • 免费下载教学设计的网站送网站建设管理信息内容审核制度
  • 外贸专业网站的公司百度旗下13个app
  • 物理组简介 网站建设高师院校语言类课程体系改革与建设 教学成果奖申报网站
  • 爱网站无法登录怎么回事手表网
  • 网站建设公司现在还挣钱吗山西手动网站建设推荐平台
  • 重庆建设工程交易信息网站网站制作公司起名
  • 东莞寮步做网站的有吗企业宣传册制作
  • 做网站的软件是哪个上蔡做网站
  • 前后端分离实现网站开发紧急通知网页升级
  • 河北专业网站建设公司推荐佛山小程序开发平台
  • 网站开发强制开启浏览器极速模式建设网站有什么风险
  • 360全景网站建设常州专业网站建设公司咨询
  • 重庆大渡口网站建设网站增加一体化建设功能的好处
  • 网站开发完整视频网站上传 404
  • 自适应网站做推广北京建设工程招标网
  • 外贸网站设计注意事项网上商城官网入口
  • 正规的营销型网站建设公司微官网是网站吗
  • 南京行业门户网站无锡阿里巴巴做网站
  • 河北省和城乡住房建设厅网站wamp wordpress打不开
  • 在哪个平台做网站比较好自动app优化
  • 有没有能帮人快速网站备案的机构个人学做网站
  • 凌云县 城市建设 网站西安市建网站
  • 织梦xml网站地图公众号公众平台