char简介  

  char是C/C++中的基本数据类型,可容纳单个字符的一种基本数据类型。

  char占一个字节,也就是8个bit(二进制位),0000 0000 ~ 1111 1111,在无符号类型时char表示的范围是0~255,在有符号类型时char表示的范围是-128~127,可以表示256个整数。

注:  

  char这种数据类型和其他的基本数据类型有所不同,char在标准中是unsigned,是有符号的,也就是有正负之分的,而其他的基本数据类型默认是signed无符号类型的。

  字符类型里的整数被分成两组,每组128个:

    其中的一组里的字符两种表示方式之间的对应关系在所有计算机上都是一样的,它们对应整数的范围从0到127。

    另一组里的字符两种表示方式之间的对应关系在不同的计算机上可能不一样,它们对应的整数范围可能从-128到-1也可能从128到255。

  字符类型(char)是整数类型,在内存单元中以整数形式存放。所以字符类型也可以进行运算。

判断编译器默认的char符号:

#include <stdio.h>

int main(void)
{
char c = -;
if (c < ) {
printf("signed\n");
} else {
printf("unsigned\n");
}
return ;
}

ASCII码:

  说到char就会提到ASCII码。

  我们平常使用的是标准ASCII码,也叫基础ASCII码,使用7位二进制数来表示(剩下的一位为0,也就是0-127)。

  0~31及127(共33个)是控制字符或通信专用字符(其余为可显示字符)。

  32~126(共95个)其中48~57为0~9阿拉伯数字、65~90为26个大写英文字母、97~122为26个小写英文字母,其余的为一些标点符号和运算符号等;

  还有扩展ASCII码,许多基于X86的系统都支持使用扩展(或高)ASCII码,扩展ASCII码允许将每个字符的第8位用于确定附加的128个特殊符号字符、外来语字母和图形符号;扩展ASCII字符从128~255(0x80~0xff)的字符。

C语言数据类型char的更多相关文章

  1. Go语言 数据类型,流程控制

    Go语言 数据类型,流程控制 人生苦短,Let's Go ! package main // 必须要有一个main包 import "fmt" func main() { fmt. ...

  2. C语言数据类型_02

    C语言数据类型:

  3. C语言-数据类型

    数据类型 -基本数据类型 --char 字符型 --int  整型 --浮点型 ---float ---double -指针类型 --void* -空类型 -构架类型 --数组[] --结构体 str ...

  4. C语言数据类型的理解

    数据类型的定义: 作为一种语言,必然有所谓的语言组成要素,就像日常生活中人们之间的交流一样,首先会有字,字再成词组,再来就是句子,后来呢就是段落等等.当然不同的字,词,句这些在一起,就会有不同的表达效 ...

  5. R语言数据类型

    R语言数据类型[转!!]Zhao-Pace  https://www.cnblogs.com/zhao441354231/p/5970544.html   R语言用来存储数据的对象包括: 向量, 因子 ...

  6. R语言 数据类型

    R语言数据类型 通常,在使用任何编程语言进行编程时,您需要使用各种变量来存储各种信息. 变量只是保留值的存储位置. 这意味着,当你创建一个变量,你必须在内存中保留一些空间来存储它们. 您可能想存储各种 ...

  7. C#中数据类型char*,const char*和string的三者转换

    C#中数据类型char*,const char*和string的三者转换: . const char* 和string 转换 () const char*转换为 string,直接赋值即可. EX: ...

  8. C语言基础学习基本数据类型-Char类型

    char类型 char类型用于储存字母和标点之类的字符.但是在技术实现上char却是整数类型.为了处理字符,计算机使用一种数字编码,用特定的整数表示特定的字符.字符变量输入输出用%c符号.定义语法如下 ...

  9. C语言数据类型取值范围

    一.获取数据类型在系统中的位数 在不同的系统中,数据类型的字节数(bytes)不同,位数(bits)也有所不同,那么对应的取值范围也就有了很大的不同,那我们怎么知道你当前的系统中C语言的某个数据类型的 ...

随机推荐

  1. c# 多线程——入门学习

    1. 概念介绍 1.1 线程 线程是操作系统能够进行运算调度的最小单位,包含在进程之中,是进程中的实际运作单位.一条线程指的时进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不 ...

  2. windows下python自带的pip安装速度过慢解决方案

    自带下载地址为国外源下载速度时常在20KB以内切换为国内源直接满速! 国内源: 新版ubuntu要求使用https源,要注意. 清华:https://pypi.tuna.tsinghua.edu.cn ...

  3. 猜数字游戏(随机数和Scannner的应用)

    在指定范围内生成一个随机数作为目标值,用户对目标值进行猜测. import java.util.Random; // 随机数 import java.util.Scanner; // 获取用户输入 p ...

  4. js实现placehoider效果

    placeholder作为input输入框提示语很好用,但是低版本ie却不支持,对于只有提示语的输入框并不适用 <input type="text" value=" ...

  5. 完整注册登陆php源码,附带session验证。

    1.首先先写表单页面login.html. <!DOCTYPE html> <html lang="en"> <head>     <me ...

  6. tensorflow函数解析:Session.run和Tensor.eval

    原问题链接: http://stackoverflow.com/questions/33610685/in-tensorflow-what-is-the-difference-between-sess ...

  7. 吴裕雄--天生自然ShellX学习笔记:Shell 流程控制

    和Java.PHP等语言不一样,sh的流程控制不可为空,如(以下为PHP流程控制写法): <?php if (isset($_GET["q"])) { search(q); ...

  8. 二、提高期(Upping the Ante)

    二.提高期(Upping the Ante) Upping the Ante?这可是第四阶段的词.没办法,Greg Thomson用这个词代表第二阶段,看着喜欢,继续沿用. 经过两三个月的“图象+声音 ...

  9. centos 下使用 pytesseract 识别文字

    偶发一个想法搭一个验证码识别工具,网上查了一下有Tesseract 这个工具可以识别,所以有了后面一小时的搭建过程 ps:Ubuntu 下似乎可以直接用包管理工具来安装,我使用的源码编译安装 前提 由 ...

  10. c++语法(1)

    #include<iostream> #include<windows.h> using namespace std; class Parents { public: ; // ...