一、初识C语言(1)

news/2024/11/8 19:50:32 标签: c语言

 1.C语言识别的是二进制语言

C语言是一门计算机语言,计算机是硬件,硬件分通电(1)和 未通电(0)两种情况,所以C语言识别的都是0 / 1信号,也就是二进制语言。

2.C语言文件类型以及基本框架

(1)文件类型

.c  源文件(程序代码文件)                                            .h(head)  头文件(函数文件)

(2)基本框架

int main ()   

// main,主函数,程序的入口,有且仅有一个。

//int,表示返回一个整型值

//(),里面一般写函数的参数,空着表示该函数无参。

{

        return 0;        //程序最后返回0,与int呼应。

}

#include <stdio.h>        //std —> 标准             io —> 输入、输出            .h —> 头文件

声明函数头文件,才能使用相应的函数。

例:#include <stdio.h>//标准输入输出头文件

       printf("  ");  //打印函数

(3)第一条C语言代码

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
//你好,世界!!!
int main ()
{
	printf("Hello,World!!!\n");
	return 0;
}

3. C语言的数据类型

(1)数据类型

                                 (数据类型)                            (单位:字节)        

 字符型                           char                                                1                        

 短整型                           short                                               2                        

 整型                               int                                                   4

 长整型                           long                                                4/8(>=int类型的大小)

 更长的长整型                long long                                         8

 单精度浮点型                float                                                 4

 双精度浮点型                double                                             8

(2)各种类型格式符号

%c        字符型

%d        整型十进制(有符号)

%u        整型十进制(无符号)

%f        单精度浮点型

%lf        双精度浮点型

%s        字符串类型

%p        地址类型(十六进制打印,占满地址线。例:32位,会有8位数据,表示地址。)

%x        十六进制打印(以最高位不为0那一位开始打印)

(3)每种数据类型所占内存大小(字节)

操作符: sizeof(计算变量或类型的大小,以字节为单位。)

#define _CRT_SECURE_NO_WARNINGS 1
#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));
	return 0;
}

(4)计算机内存单位之间的换算

bit(比特) —> byte(字节) —> KB —> MB —> GB —> TB

                     8                        1024     1024    1024     1024

bit(比特)(位):计算机中最小的单位,表示一位二进制数 0/1。

例:char:1(byte)—> 8(bit) —> 2^{8}种状态 —> 表示:0~2^{8}-1 (0~255)

(5)C语言的整数和小数

C语言中,整数默认是int,小数默认是double。

1>e:\c\projects\test\test\test.c(5): warning C4305: “初始化”: 从“double”到“float”截断

例:float a=3.14;  //警告从double到float截断,精度丢失。

                改

        float a=3.14f;

4.变量

 C语言语法规定,变量要定义在当前代码块的最前面。

        局部变量:定义在代码块内部的变量

变量

        全局变量:定义在代码块外部的变量

(1)作用域

                局部变量的作用域是变量所在的局部范围

作用域

                全局变量的作用域是整个工程

extern int a; //extern 声明外部符号,声明另一个源文件中定义的变量。

(2)生命周期

                局部变量的生命周期,进作用域开始,出作用域结束。

生命周期

                全局变量的生命周期是整个程序的生命周期

(3)局部变量优先

当局部变量和全局变量同名时,局部变量优先。

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
//局部变量优先
int a = 0;
int main ()
{
	int a = 1;
	printf("a=%d\n",a);
	return 0;
}

5.思维导图


http://www.niftyadmin.cn/n/5744355.html

相关文章

Qt中实现高准确率的语音识别

选择语音识别引擎 开源语音识别项目中&#xff0c;以下两款工具可以用于支持中英文识别&#xff0c;并且与Qt兼容&#xff1a; Vosk&#xff1a;Vosk是一个开源的语音识别工具&#xff0c;支持中英文及多种语言&#xff0c;具备离线识别能力&#xff0c;且不依赖互联网。 Padd…

ruoyi-vue中的mybatis改为mybatis-plus

这里写自定义目录标题 1下载ruoyi-vue项目代码2创建数据库3前端项目4后端项目 计划赶不上变化&#xff0c;本打算做自己知识库网站&#xff0c;但是最近事情真的太多了&#xff0c;只能再往后延了。最近孩子得了疱疹性咽峡炎发高烧&#xff0c;一个星期没去上学&#xff1b;期间…

Centos7 搭建 Java Web 开发环境

解决Centos7 yum命令报错问题 【解决】CentOS7 生命周期结束后 使用 yum命令报错问题_this linux distribution (centos 7) reached end-of--CSDN博客文章浏览阅读1k次&#xff0c;点赞4次&#xff0c;收藏3次。centos7在2024年6月30日&#xff0c;生命周期结束&#xff0c;官…

libgdiplus在MacOS M1上问题:Unable to load shared library ‘libgdiplus‘

libgdiplus在MacOS M1上问题&#xff1a;Unable to load shared library libgdiplus 问题解决步骤1步骤2 问题 在mac上的pycharm中执行下面的代码时出现下面的错误 slide.get_thumbnail( RuntimeError: Proxy error(TypeInitializationException): The type initializer for…

51c大模型~合集17

我自己的原文哦~ https://blog.51cto.com/whaosoft/11599989 #关于大模型「越狱」的多种方式 此项目是由伊利诺伊大学香槟分校&#xff08;UIUC&#xff09;的汪浩瀚教授主导&#xff0c;汇集了多名intern的共同努力而成。长久以来&#xff0c;这个跨学科的团队一直在前沿科…

【EMNLP2024】面向长文本的文视频表征学习与检索模型 VideoCLIP-XL

近日&#xff0c;阿里云人工智能平台PAI与华南理工大学金连文教授团队合作&#xff0c;在自然语言处理顶级会议EMNLP 2024 上发表论文《VideoCLIP-XL: Advancing Long Description Understanding for Video CLIP Models》。该工作提出了一个名为VideoCLIP-XL的视频CLIP模型&…

内核网络TCP/IP协议

参考&#xff1a; TCP/IP协议栈在Linux内核中的运行时序分析【万字长文】 - 维科号

基础网络安全知识

1.ctfhub技能树 1.1 Web-SQL注入 Web-SQL注入-整数型 && 字符型 && MySQL结构 参考&#xff1a;5.9.6MySql注入 Web-SQL注入-报错注入 step1: 查库名 ?id1 and extractvalue(1,concat(0x7e,database(),0x7e))-- step2: 查看表名 ?id1 and extractvalue(1…