C语言基础复习:有关字符型

1. 概述
2. 字符的符号和大小
3. 字符(数组)的声明,定义,初始化,引用
3.1 字符的声明定义初始化引用
3.2 字符数组的定义初始化引用

1. 概述

字符类型在C语言编程中占据着很大作用,尤其是Linux系统中一切皆文件,包括字符设备和块设备等。

掌握字符类型的全部知识点,能够数量掌握Linux下的C语言编程。

本篇主要介绍C语言基本数据类型-字符,以及与字符相关的知识点,包括:

  • 字符的符号和大小
  • 字符(数组)的声明,定义,初始化,引用
  • 字符的计算
  • 字符(二维)数组
  • 字符串
  • 字符指针

2. 字符的符号和大小

在不同的平台中,通常以1字节的内存区域表示字符数据类型的大小,因为字符的数量不多,包括26个字母和一些转义字符等

1字节8位,能够存储256个状态值,也就代表能够256个字符。如果以该字节的第一位为符号的话,那么能够存储-127~+127的状态值。

C语言中,字符的定义在头文件/usr/include/stdint.h中,包括了字符类型定义和字符范围的定义

C语言示例代码如下:

#include<stdio.h>
#include<stdint.h>
int main(){
    printf("char size is :%d\n",sizeof(char));
    printf("char max is:%d  min is:%d\n",INT8_MAX,INT8_MIN);
    printf("unsigned char max is:%d\n",UINT8_MAx);
    retuen 0;
}

执行结果为:

char size is : 1
char max is:127,min is:-128
unsigned char max is:255

3. 字符(数组)的声明,定义,初始化,引用

3.1 字符的声明定义初始化引用

C语言示例代码如下:

#include<stdio.h>
int main(){
    //编译器分配
    char char_a = ‘A‘;
    printf("%c\n",char_a);
    //标准输入获取
    printf("输入字符:\n");
    scanf("%c",&char_a);
    printf("输入的字符是:%c\n",char_a);
    //其他输入方式,如磁盘文件,网络套接字,进程信号等
    return 0;
}

3.2 字符数组的定义初始化引用

字符数组,即有字符类型组成的数组。

字符串也是字符数组,但是字符串在结尾处包括了一个转移字符。

代码如下:

#include<stdio.h>
# define SIZE NUM
int main(){
    //字符数组定义和初始化同样遵循数组的定义和初始化
    //定义
    char a[];    错误
    char a[SIZE];    正确
    //定义和初始化
    char a[] = {‘‘,‘‘}    正确
    char a[SIZE] = {};    正确
    return 0;
}

原文地址:https://www.cnblogs.com/liwanliangblog/p/9537199.html

时间: 2024-11-05 22:00:02

C语言基础复习:有关字符型的相关文章

MySQL学习笔记_8_SQL语言基础复习

 SQL语言基础复习 一.概述 SQL语句注释方式 1)以"#"开头直到行尾的所有内容都是注释 2)以"--"(--后还有一个空格)开头直到行尾的所有内容都是注释 3)以"/*"开始,以"*/"结束的所有内容都是注释,可用于注释多行 二.数据库操作 1.创建数据库 create database db_name; db_name命名规则: 1)名称可由任意字母,数字,"_"或"$"组

2018.6.13 Java语言基础复习总结

Java语言基础与面向对象编程实践 第一章 初识Java 1.1机器语言 机器语言是指一台计算机全部的指令集合.机器语言室友0和1组成的二进制数,是一串串由0和1组成的指令序列,可将这些指令序列交给计算机执行. 1.2汇编语言 负责把汇编语言翻译成二进制的机器语言,这种翻译程序就是汇编程序. 1.3高级语言 1954年第一个完全脱离机器硬件的高级语言FORTRAN诞生 1.3.1C语言 是一种计算机程序设计语言,它既有高级语言的特点,又具有汇编语言的特点. 1.3.2 C++语言 是具有面向对象

c语言基础复习(持续)

开始了ios的学了了由于oc,所以就有一定必要学习下c的一些基本概念了.东西有点多. 基本上都是一些程序设计的问题了. 0.什么叫编程 通过编写代码,让计算机实现人的想法.(编写代码--->编译代码--->运行程序) 1.程序三要素,顺序,选择,循环. 2.语句构成程序,语句以;结束. 3.在linux平台使用gcc编译c语言.gcc可以编译多种语言.在mac上面使用gcc  文件.c   -o 文件.out或者直接gcc   他会编译一个a.out文件 4.使用./文件   运行编译后的文件

C语言基础复习1

strlen() 和sizeof()的区别 1. sizeof()是操作符,可以计算任意类型的大小(包括函数类型). 2.strlen()是函数, 需要引入头文件<string.h>,只能计算char* 类型以 '\0' 结束的字符串的大小. 3. 数组做sizeof()的参数不退化 , 但是传递给strlen() 就退化为指针. 4. strlen的结果要在运行的时候才能计算出来,时用来计算字符串的长度,不是类型占内存的大小. 5. sizeof后如果是类型必须加括弧,如果是变量名可以不加括

c语言基础-变量(整型)

一.整型变量 类型 关键字 取值范围 存储单元字节数(非固定) 输出 有符号整型 [signed] int -2147483648~2147483647 4 %d 无符号整型 unsigned [int] 0~4294967295 4 %u 有符号短整型 [signed] short [int] -32768~32767 2 %h 无符号短整型 unsigned short [int] 0~65535 2 %hu 有符号长整型 [signed] long long [int] -21474836

一:C语言基础复习--控制结构

一:分支语句 if(逻辑表达式)//只有两种:0或非0 { //语句1 } else if(逻辑表达式) { //语句2 } else { //语句3 } switch(变量或表达式)//可以为整形或枚举类型 { case 数值://数值必须为常量表达式 语句1: break; case 数值: 语句2; break; case 数值: 语句3; break; default: 默认语句 } 二:循环语句(使用continue和break,跳出循环) while(逻辑表达式或变量)//只有0和非

C#语言和数据库技术基础复习

整理了下C#语言和数据库技术基础,作为复习资料 第一章 一.c#和JAVA对比:1.c#用命名空间(namespace)java用包(package) 2.引入命名空间或包的关键字C#用using,JAVA用import 3.程序入口:C#的Main()有四种形式static void Main(string[] args) static int Main(string[] args) static void Main() static int Main() JAVA的MAIN()有一种形式 4

基于python语言的tensorflow的‘端到端’的字符型验证码识别源码整理(github源码分享)

基于python语言的tensorflow的‘端到端’的字符型验证码识别 1   Abstract 验证码(CAPTCHA)的诞生本身是为了自动区分 自然人 和 机器人 的一套公开方法, 但是近几年的人工智能技术的发展,传统的字符验证已经形同虚设. 所以,大家一方面研究和学习此代码时,另外一方面也要警惕自己的互联网系统的web安全问题. Keywords: 人工智能,Python,字符验证码,CAPTCHA,识别,tensorflow,CNN,深度学习 2   Introduction 全自动区

C语言中以十六进制输出字符型变量会出现&#39;ffffff&quot;的问题

最近在做一个C的嵌入式项目,发现在C语言中用printf()函数打印字符型变量时,如果想采用"%x"的格式将字符型变量值以十六进制形式打印出来,会出现一个小问题,如下: C代码   char buf[10] = {0}; buf[0] = 0xbf; printf("%2x\n\n\n", buf[0]);            /*在终端将会显示成:ffffffbf*/ buf[1] = 0x7f; printf("%2x\n\n\n", bu