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

1688电影网入口大连谷歌seo

1688电影网入口,大连谷歌seo,重庆观音桥步行街,wordpress搭建站点随着技术的发展,越来越多开发者转向使用 Windows Subsystem for Linux(WSL)在 Windows 10 上进行开发,也就是说不用虚拟机,不用准备多一台电脑,只需要在Windows 10/11 里安装 WSL 就能体验 Linux 系统。因此…

随着技术的发展,越来越多开发者转向使用 Windows Subsystem for Linux(WSL)在 Windows 10 上进行开发,也就是说不用虚拟机,不用准备多一台电脑,只需要在Windows 10/11 里安装 WSL 就能体验 Linux 系统。因此我在 Win10 系统里安装了Ubuntu 20 系统学习 Linux 基础,可以用来编译 C / C++ 代码,体验同一个代码编译运行与 Windows 环境下的差别。

之前就听说 WSL 有一些潜在的限制,无论性能还是功能都不能100%取代裸机 Linux 系统。今天就被我逮到 WSL 下的 Ubuntu 的一个缺点:输出宽字符串(wide string)时失败。

比如下面一段把普通字符串转换成宽字符串的 C 代码:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <wchar.h>
#include <locale.h>int main() {// Windows环境下要设为 setlocale(LC_ALL, "en-US.UTF-8");// Linux环境下设为 setlocale(LC_ALL, "");// 设置不当的话,转换后的宽字符串长度不正确setlocale(LC_ALL, "");char* str = "22年2月22日";int len = strlen(str);printf("narrow string: %s\n", str);printf("narrow string length: %d\n", len);wchar_t* wstr = (wchar_t*)malloc((len + 1) * sizeof(wchar_t));size_t wlen = mbstowcs(wstr, str, len+1);wprintf(L"wide string: %ls\n", wstr);printf("wide string length: %zu\n", wlen);for(size_t i=0; i<wlen; i++)wprintf(L"%lc\t%d\n", wstr[i], (int)wstr[i]);free(wstr);return 0;
}

这段代码将普通字符串“22年2月22日”转换成宽字符串格式,得出正常的长度为8,然后输出各个字符值。在 Windows 环境下,必须在主程序里设置setlocale(LC_ALL, "en-US.UTF-8");或者setlocale(LC_ALL, "zh-CN.UTF-8");,使用 clang 编译运行的结果才能正常:
在这里插入图片描述
到了 WSL 的 Ubuntu 环境,由于Ubuntu终端的字符编码默认是UTF-8,因此主程序中要把 LC_ALL后面的字符串置空:setlocale(LC_ALL, "");,然后编译运行:

在这里插入图片描述
转换后的宽字符串长度是8,这是正确的,但是无法输出转换后的字符串以及每个字符对应的值。我尝试了各种办法修改 wprintf 和 printf 语句,但输出结果无济于事,令人百思不得其解。

直到后来我在安卓手机上安装了Termux(一款运行于安卓系统的 Linux 模拟器),然后在手机上运行 clang 编译再运行 ~~ 结果一切正常了。

在这里插入图片描述

换了环境,豁然开朗!

由此可见 Windows 10 的 WSL(Ubuntu) 在处理特定操作时确实有其局限性。

http://www.hkea.cn/news/491384/

相关文章:

  • 建筑公司网站有哪些谈谈自己对市场营销的理解
  • 做ppt音乐怎么下载网站企业培训课程有哪些
  • magento网站建设网站优化排名软件网站
  • 做生鲜食品最好的网站网络推广及销售
  • 销售管理系统需求分析长沙seo代理
  • 站长网站查询深圳百度关键字优化
  • 用net语言做网站平台好不好企业培训师资格证报考2022
  • 成都定制网站设竞价推广遇到恶意点击怎么办
  • 制作视频网站建设友链交易网
  • 做外贸是不是要有网站腾讯企点app下载安装
  • 网站开发快递文件国外网站怎么推广
  • 网站和搜索引擎站长论坛
  • 做违法网站会怎样外贸独立站怎么建站
  • 云主机建网站教程深圳全网推互联科技有限公司
  • 做网站赚50万谷歌搜索引擎363入口
  • 台州网站设计外包网页制作公司排名
  • 网站建设投标文件范本亚马逊提升关键词排名的方法
  • 学做网站需要多长时间免费推广平台排行
  • wordpress运行php 404360优化大师下载
  • seo排名网站 优帮云线上推广的三种方式
  • 平凉哪有做网站的百度推广登录入口官网网
  • 娄底网站优化自建网站平台有哪些
  • 做网站需要多少兆空间wix网站制作
  • 哪些网站教做生物实验今日新闻联播
  • 铜川市住房和城乡建设局网站信息流广告哪个平台好
  • 太原市建设交易中心网站首页百度手机助手app安卓版官方下载
  • 昆山网站建设网站建设郑州网络推广哪个好
  • 瑜伽网站设计国外推广网站
  • 什么网站做国外批发百度推广自己怎么做
  • 网站管理工具百度推广可以自己开户吗