1-字符字节是什么到底什么是数据类型

相信很多新手小伙伴像我一样在一开始很多视频就会告诉你很多数据类型什么 int,char等等等。但是我们根本不理解到底什么数据类型写的时候我到底应该用那种来表示我所创建的数据。我所分享的都是我作为初学者发现的学习中的困难并通过学习总结分享出来,可能进度比较慢主要针对一些具体的小问题。希望能帮助的迷途的你。

     其实我们在像电脑输入数据类型的时候就是一种向电脑申请储存空间的时候,因为首先我们需要储存空间来放置我们设定的变量,就像酒店得给每个人安排个住的房间一样安排一个带名称的房间之后你才会知道几号房住的什么客人。每一个数据类型代表了你要申请多大的空间。其中数据类型以及其所占空间如下

char         // 字符数据类型-1个字节
short       // 短整型-2个字节
int         // 整型-4个字节
long         // 长整型-4个字节
long long   // 更长的整型-8个字节
float       // 单精度浮点数-4个字节
double       // 双精度浮点数-8个字节
这里我们可以通过一个命令来查这些所占类型,有兴趣可以自己输入到visual中尝试运行一下
#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));
	printf("%d\n", sizeof(long long));
	printf("%d\n", sizeof(float));
	printf("%d\n", sizeof(double));
	printf("%d\n", sizeof(long double));
	return 0;
}

      这里我再来具体的对这个字节分析一下,在ASCII编码中一个字母(不分大小写)占一个字节,一个字节等于8比特,比特就是电脑空间的最小单位量,因为电脑只能识别0和1比特存放的就都是0或1。这里我们就首先明白了这些数据类型他具体可以放多大的东西进去,那么,每个不同的名称放进去的东西又是怎样呢?

整型数据是不包含小数部分的数值型数据,整型数据只用来表示整数,以二进制形式存储。

浮点数是用来表示带有小数部分的实数。

接下来应用到实际当中,我们在具体的c语言编写过程中的如何应用呢?我们程序的编写就会有一些常量和变量的输入。

int age = 150 ;
float weight = 45.5f ;
char ch = 'w' ;
这些就是变量 可以起任何名字,根据代码需要为了方便后续使用最好还是使用英文,可以方便后面调用。变量又分为全局变量和局部变量。
#include <stdio.h>
int global = 2019;//全局变量
int main()
{
    int local = 2018;//局部变量
    //下面定义的global会不会有问题?
    int global = 2020;//局部变量
    printf("global = %d\n", global);
    return 0; }

这里我们可以看到在主函数也就是int main这里定义的就是全局的变量,在括号{}里的就是局部变量只在括号中起作用。所以你的输出printf是在括号中所以局部变量优先使用也可以说是就近原则。

变量的作用域和生命周期
作用域
作用域( scope ),程序设计概念,通常来说,一段程序代码中所用到的名字并不总是有效 / 可用
的 ,而限定这个名字的可用性的代码范围就是这个名字的作用域。
1. 局部变量的作用域是变量所在的局部范围。
2. 全局变量的作用域是整个工程。
生命周期
变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段
1. 局部变量的生命周期是:进入作用域生命周期开始,出作用域生命周期结束。
2. 全局变量的生命周期是:整个程序的生命周期。

这里我们再说一一下输入,输出对应的就是printf,scanf。输出就是电脑显示的,输入就可以是你给电脑输入的。

#include <stdio.h>
int main()
{
    int num1 = 0;
   int num2 = 0;
    int sum = 0;
    printf("输入两个操作数:>");
    scanf("%d %d", &a, &b);
    sum = num1 + num2;
    printf("sum = %d\n", sum);
    return 0; }

可以通过这个代码感受一下学习代码的过程并不是一种堆墙砌瓦的过程更多是在多看多用慢慢摸索出来的所以很多时候不需要真正的专门去背,多上手实际操作比背学的更快。

字符串 + 转义字符 + 注释
字符串
这种由双引号( Double Quote )引起来的一串字符称为字符串字面值( String Literal ),或者简称字符串。
"hello bit.\n"
注:字符串的结束标志是一个 \0 的转义字符。在计算字符串长度的时候 \0 是结束标志,不算作字符串 内容。
#include <stdio.h>
//下面代码,打印结果是什么?为什么?(突出'\0'的重要性)
int main()
{
    char arr1[] = "bit";
    char arr2[] = {'b', 'i', 't'};
    char arr3[] = {'b', 'i', 't', '\0'};
    printf("%s\n", arr1);
    printf("%s\n", arr2);
    printf("%s\n", arr3);
    return 0; }

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值