初识C语言——计算机单位、数据类型、字符串、转义字符、ASCII表

注:实验环境

          Windows 11 系统
          Visual Studio 2019

1. 常用的计算机单位

       bit (比特位) ——可存放1个二进制位

       byte (字节) —— = 8 bit

       kb (千字节) —— = 1024 byte

       mb (兆字节,兆) —— = 1024 kb

       gb (吉字节,千兆) —— = 1024 mb

       tb (万亿字节,太字节) —— = 1024 gb

       pb (千万亿字节,拍字节) —— = 1024 tb

2. 数据类型

类型类型说明符例子输出形式字节数取值
字符数据类型 char char ch = 'a';

字符:“%c\n”

字符串:“%s\n”

1
短整型     short short num = 10; “%d\n”25位十进制数
整形int int pai = 7;“%d\n”410位十进制数
长整型   long long num1 = 7899“%d\n”410位十进制数
更长的整形long long long long num2 = 74897“%d\n”820位十进制数
单精度浮点数float float weight = 60.4“%f\n”4
双精度浮点数double double d = 0.0“%lf\n”8      

       计算数据类型的长度可以通过以下代码实现:

#include <stdio.h>
int main()
{
	printf("%d\n", sizeof(char));           
	printf("%d\n", sizeof(short));
	printf("%d\n", sizeof(int));
	printf("%d\n", sizeof(long));           //C语言标准:sizeof(long) >= sizeof(int)即可
	printf("%d\n", sizeof(long long));
	printf("%d\n", sizeof(float));
	printf("%d\n", sizeof(double));
	return 0;
}                                           /*输出结果为 1
                                                         2
                                                         4
                                                         4
                                                         8
                                                         4
                                                         8*/

3. 字符串

     用双引号引起来的一串字符称为字符串字面值,简称字符串。    //例:“good morning.\n”

每个字符串结束的标志为一个 \0(即每个字符串结尾都隐藏了 \0) 的转义字符,\0 只是结束标志,不计算在字符串长度内。

      通过以下代码可以突出 \0 的重要性:

 //突出\0的重要性
#include <stdio.h>
int main()
{                               //arr1-3为数组,数组即一组相同类型的元素
	char arr1[] = "efg";       //数组内有4个元素,为efg\0
	char arr2[] = { 'a','b','c' };     //数组内有3个元素
	char arr3[] = { 'a','b','c','\0' };    //数组内有4个元素
	printf("%s\n", arr1);
	printf("%s\n", arr2);
	printf("%s\n", arr3);
	return 0;
}                                          /*输出结果为 efg
                                                        abc烫烫烫烫蘣fg
                                                        abc*/
                                           //arr2输出结果之所以乱码是因为没有 \0 结束标志

       通过以下代码计算字符串的长度:

 //求字符串长度
#include <stdio.h>
#include <string.h>
int main()
{
    char arr1[] = "hello";
    char arr2[] = { 'h','e','l','l','o'};
    char arr3[] = { 'h','e','l','l','o','\0'};
    printf("%d\n", strlen(arr1));
    printf("%d\n", strlen(arr2));
    printf("%d\n", strlen(arr3));
    return 0;
}                                       /*输出结果为5
                                                   21
                                                   5*/
                                      // \0不计算在长度内
                                      // 由于arr2[]没有以\0结尾,因此输出长度值为随机值

4. 常用转义字符

转义字符释义例子
\?书写多个问号时,防止被解析成三字母词

??) 为三字母词,输出为 ]

\?\?) 输出为 ??)

例:printf("(are you ok??)");   输出为 (are you ok??)

\'

用于表示字符常量'printf("%d\n", '\''); 输出为 '
\"用于表示一个字符串内部的双引号printf("%d\n", "\""); 输出为 "
\a警告字符,发出蜂鸣声printf("%d\n", "\a"); 输出为 电脑会发出蜂鸣声
\n换行
\t水平制表符,相当于键盘上的Tab键printf("%c:\hello\text.c\n"); 输出为 c:hello  ext.c
\v垂直制表符
\dddddd 表示1-3 个八进制的数字

printf("%c\n", "\130"); 输出为 X

printf("%c\n", "\65"); 输出为 A

\xdddd 表示2个十六进制数字printf("%c\n", "\x30"); 输出为 0
\b退格符
\f进纸符
\r回车

5. ASCII表

  • 13
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值