我们在C++里处理字符通常是这样的

char a = 'A' // A = 65
printf("'%c' = %d", a + 1, a + 1) // 'B' = 66

这在号称吸收C/C++所有优势特性的Swift里面是行不通的,因为
Character 和 Int 不能进行计算操作,会报错

var c:Character = "A"
c + 1 // 这里是错误的 Xcode 会告诉你 Binary operator '+' cannot be applied to operands of type 'Character' and 'Int'

于是乎教科书里没有说的内容就带来了问题

网上也没有

但是教科书里说到一个例子中有String.unicodeScalars可以返回字符串的ASCII(或者是Unicode值)的数组。

于是

UnicodeScalar

这个类就被找到了

字符”A”可以这么表示

let A = Character(UnicodeScalar(65))

它的值65可以这么来

let A_ASCII = UnicodeScalar("A") // 65

在Swift中的ASCII到字符转换的问题的更多相关文章

  1. Linux c字符串中不可打印字符转换成16进制

    本文由 www.169it.com 搜集整理 如果一个C字符串中同时包含可打印和不可打印的字符,如果想将这个字符串写入文件,同时方便打开文件查看或者在控制台中打印出来不会出现乱码,那么可以将字符串中的 ...

  2. C语言字符转换ASCII码

    //函 数 名:CharToHex()//功能描述:把ASCII字符转换为16进制//函数说明://调用函数://全局变量://输    入:ASCII字符//返    回:16进制///////// ...

  3. [Swift]字符串根据索引获取指定字符,依据ASCII实现字符和整数的相互转换

    ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧 ...

  4. Swift 中 String 与 CChar 数组的转换

    在现阶段Swift的编码中,我们还是有很多场景需要调用一些C函数.在Swift与C的混编中,经常遇到的一个问题就是需要在两者中互相转换字符串.在C语言中,字符串通常是用一个char数组来表示,在Swi ...

  5. swift 中数据类型那个的转换

    在swift中关于数据类型的转换,如果参数是可选类型? 那么打印或者转换的结果 会带有Optional 字样,,

  6. 工作随笔——Swift中的Range和一些字符操作

    截取字符串在Swift中相比OC要复杂很多,主要原因可能还是OC的NSRange的创建方法中参数类型为int,而Swift却对类型要求很严格,int不能作为参数创建Range,这要使用String中的 ...

  7. 过滤ASCII码中的不可见字符, ASCII三部分, 各控制字符详解, 去^@,^M

    今天产品部同事报告了一个BUG,经过调试发现,由于用户输入的字符串中,包含字符0x1E, 也就是”记录分隔符”(Record Separator, Notepad++ 显示为[RS]),导致JavaS ...

  8. Swift中如何转换不同类型的Mutable指针

    在Swift中我们拥有强大高级逻辑抽象能力的同时,低级底层操作被刻意的限制了.但是有些情况下我们仍然想做一些在C语言中的hack工作,下面本猫就带大家看一看如何做这样的事. hacking is ha ...

  9. [c/c++] programming之路(6)、ASCII码,数据类型、随机数、字符转换及拼接等

    一.变量 #include<stdio.h> #include<stdlib.h> void main0(){ //数据使用必须在范围内,否则产生溢出 unsigned +;/ ...

随机推荐

  1. 根据headerView位置改变headerView颜色(collectionView/tableview)

    滑动时,tableview中的headerView 的frame不断改变,collectionView的headerView的center不断改变.sotableview: -(void)setFra ...

  2. pku1273 Drainage Ditches

    http://poj.org/problem?id=1273 网络流,Dinic #include <stdio.h> #include <string.h> #include ...

  3. INTEL XDK 真机调试

    需要安装 1.google服务框架 2.google play 3.app preview

  4. [Cocos2d-JS] 安卓机器的几个按钮

    cc.eventManager.addListener({ event:cc.EventListener.KEYBOARD, onKeyPressed:function(keycode,event){ ...

  5. 第三百三十五天 how can I 坚持

    晚上回来看了个奥斯卡影片,<疯狂的麦克斯-狂暴之路>,挺震撼的场面.导演确实挺厉害,不知道是怎么想象出来的. 睡觉,明天继续.

  6. fdquery update

    fdquery  update this->FDQuery1->CachedUpdates; this->FDQuery1->UpdateOptions->KeyFiel ...

  7. AndroidStudio debug

    1. view as text

  8. webrtc 的回声抵消(aec、aecm)算法简介(转)

    webrtc 的回声抵消(aec.aecm)算法简介        webrtc 的回声抵消(aec.aecm)算法主要包括以下几个重要模块:1.回声时延估计 2.NLMS(归一化最小均方自适应算法) ...

  9. struts2 集成 easyui

    关键点: json数据格式 获取json数据 输出json 分页 #json数据格式# datagrid: {"total":1,"rows":[{" ...

  10. C#.NET 消息机制

    一.消息概述 众人周知,window系统是一个消息驱动的系统, windows操作系统本身有自己的消息队列,消息循环,它捕捉键盘,鼠标的动作生成消息,并将这个消息传给应用程序的消息队列. 余下的工作有 ...