C语言学习笔记

基础语法

注释

int main()
{//这是单行注释
/** 多行注释*/
}

变量

变量声明 

格式:type name

int main()
{//变量的声明int num;//变量使用num=1;//声明多个变量int num1,num2;//变量的初始化int num3=1;}
int num;
num=10;

常量

const double PI = 3.14;

基础数据类型

数据类型存储大小范围
char1 字节-128 到 127
signed char1 字节-128 到 127
unsigned char1 字节0 到 255
short2 字节-32,768 到 32,767
signed short2 字节-32,768 到 32,767
unsigned short2 字节0 到 65,535
int2 或 4 字节-32,768 到 32,767
signed int2 或 4 字节-32,768 到 32,767
unsigned int2 或 4 字节0 到 65,535
short int2 字节-32,768 到 32,767
signed short int2 字节-32,768 到 32,767
unsigned short int2 字节0 到 65,535
long int4 字节-2,147,483,648 到 2,147,483,647
signed long int4 字节-2,147,483,648 到 2,147,483,647
unsigned long int4 字节0 到 4,294,967,295
float4 字节
double8 字节
long double10 字节

 整数

int id;

unsigned只能储存零值和正数。

unsigned int x;
int y;

 

浮点数

float salary;

字符

char test = 'h';

运算符

类型转换

语法:(type)name

注意:始终建议将较低的值转换为较高的值,以避免数据丢失。

输入

输出

数据类型格式说明符
int%d
char%c
float%f
double%lf
short int%hd
unsigned int%u
long int%li
long long int%lli
unsigned long int%lu
unsigned long long int%llu
signed char%c
unsigned char%c
long double%Lf

整数输出 

int main() {int num=10;printf("%d",num);
}

单精度浮点和双精度浮点数输出

int main() {float num=1.3;double num1=1.4;printf("%f\n",num);printf("%lf\n",num1);}

打印字符

int main() {char c='1';printf("%c\n",c);
}

 检查变量的大小

格式:sizeof(name)

int main() {short b;int c;long long e;printf("%d\n",sizeof(b));printf("%d\n",sizeof(c));printf("%d\n",sizeof(e));}

空类型

void是空类型,一般用于函数的返回类型表示,表示该函数啥都不返回。

例如,如果函数不返回任何内容,则其返回类型应为void。

储存类

复合数据类型

数组

数组的语法 : Type Name[Size];

int main()
{//数组的声明int arr[10];//数组的初始化int arr1[10]={1,2};
}

字符串

在C语言编程中,字符串是以null字符\0结束的字符序列。

//声明字符串
char s[5];
//初始化字符串
char c[] = "abcd";
char c[50] = "abcd";
char c[] = {'a', 'b', 'c', 'd', '\0'};
char c[5] = {'a', 'b', 'c', 'd', '\0'};

 指针

指针是用来储存变量地址的特殊变量

声明指针

语法:type *name

int *p

指针赋值变量地址

int main()
{int *p;int num=5;p=#printf("%d", *p);
}

流程控制

for

while

break continue

if...else

swtich

goto

函数

序号C函数方面语法
1函数声明return_type function_name(argument_list);
2函数调用function_name(argument_list)
3函数定义return_type function_name(argument_list){function body;}

没有返回值

void hello(){printf("hello c");
}

结构体

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/759922.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

单片机学到什么程度才可以去工作?

单片机学到什么程度才可以去工作? 如果没有名校或学位的加持,你还得再努力一把,才能从激烈的竞争中胜出。以下这些技能可以给你加分,你看情况学,不同行业对这些组件会有取舍: . Cortex-M内核:理解MCU内核各部件的工作机制&#…

力扣---两数相加

给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。 请你将两个数相加,并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外,这两个数都不会以 0 …

AI程序员:编程界的新贵还是险象环生?

全球首位AI程序员诞生,将会对程序员的影响有多大? 最近,全球的编程界掀起了一场轩然大波,因为一位名为Devin的AI程序员闪亮登场。他的出现让人不禁思考一个有趣而深刻的问题:AI程序员会不会抢走人类程序员的饭碗呢&am…

快速画流程图

使用在线工具:PlantUML PlantUML 官网:https://plantuml.com/ 中文官网:https://plantuml.com/zh/ 使用步骤如下: 1、拷贝一个完成函数: int func_init(const char *tag) {if (tag ! NULL) {printf("set TAG :%s", tag);}print…

webpack5零基础入门-13生产模式

1.生产模式介绍 生产模式是开发完成代码后,我们需要得到代码将来部署上线。 这个模式下我们主要对代码进行优化,让其运行性能更好。 优化主要从两个角度出发: 优化代码运行性能优化代码打包速度 2.生产模式准备 我们分别准备两个配置文件来放不同的…

xml转json

安装包 <dependency><groupId>com.fasterxml.jackson.dataformat</groupId><artifactId>jackson-dataformat-xml</artifactId><version>2.15.3</version></dependency>使用 类定义 Data JacksonXmlRootElement(localName &…

python的FastAPI 快速入门

你好&#xff0c;我是 shengjk1&#xff0c;多年大厂经验&#xff0c;努力构建 通俗易懂的、好玩的编程语言教程。 欢迎关注&#xff01;你会有如下收益&#xff1a; 了解大厂经验拥有和大厂相匹配的技术等 希望看什么&#xff0c;评论或者私信告诉我&#xff01; 文章目录 一…

《算法王晓东》多处最优服务次序问题

多处最优服务次序问题 题目描述 设有n个顾客同时等待一项服务。顾客i需要的服务时间为ti, 1≤i≤n。共有s处可以提供此项服务。应如何安排n个顾客的服务次序才能使平均等待时间达到最小? 平均等待时间是n个顾客等待服务时间的总和除以n。 算法设计&#xff1a;对于给定的n个顾…

41 物体检测和目标检测数据集【李沐动手学深度学习v2课程笔记】

目录 1. 物体检测 2. 边缘框实现 3.数据集 4. 小结 1. 物体检测 2. 边缘框实现 %matplotlib inline import torch from d2l import torch as d2ld2l.set_figsize() img d2l.plt.imread(../img/catdog.jpg) d2l.plt.imshow(img);#save def box_corner_to_center(boxes):&q…

CY7C144

关于CY7C144和CY7C145这两款双端口静态随机存取存储器&#xff08;Dual-Port SRAM&#xff09;的数据手册&#xff0c;由Cypress Semiconductor公司生产。以下是文档的翻译内容和详细解读&#xff1a; 特性 真正的双端口存储单元&#xff0c;允许同时读取同一内存位置CY7C144…

javascript的词法结构

js的标识符也就是名字&#xff0c; 必须以 字母、下划线、或$符号开头 unicode js程序是使用Unicode字符集编写的&#xff0c; 建议只使用ASCII字母和数字&#xff0c;但是语言本身也支持使用Unicode字母 数字和象形文字 不支持标签符号 关于Unicode转义序列 由于假数据硬件和…

设计模式之抽象工厂模式解析

抽象工厂模式 1&#xff09;问题 工厂方法模式中的每个工厂只生产一类产品&#xff0c;会导致系统中存在大量的工厂类&#xff0c;增加系统的开销。 2&#xff09;概述 a&#xff09;产品族 和 产品等级结构 产品等级结构&#xff1a;产品的继承结构&#xff1b; 产品族&…

通俗理解自注意力机制

自注意力机制&#xff08;Self-Attention Mechanism&#xff09; 是一种用于处理序列数据的机制&#xff0c;最初被引入到神经网络模型中&#xff0c;用于在序列数据中建立全局依赖关系。自注意力机制最常用于自然语言处理和计算机视觉领域&#xff0c;特别是在Transformer模型…

Python实战:Pandas数据合并与重塑

本文将深入探讨Pandas库在数据合并与重塑方面的强大功能。我们将涵盖多种数据合并方法&#xff0c;如merge、join、concat等&#xff0c;以及数据重塑的技巧&#xff0c;如pivot_table、merge_asof等。 一、引言 Pandas是一个强大的Python数据分析库&#xff0c;它提供了丰富…

【Flutter】文件选择器(file_picker)的用法

Flutter 没有提供内置的文件选择器&#xff0c;但社区内有人贡献了一个比较完整的解决方案——file_picker。 file_picker 的 API 简洁易用&#xff0c;支持全平台&#xff08;Android / iOS / Mac / Linux / Windows&#xff09;&#xff0c;是我开发桌面应用时的首选。 这边…

HMI界面之:上位机界面设计,一文扫盲

一、什么是上位机 上位机&#xff08;Supervisory Control and Data Acquisition&#xff0c;简称SCADA&#xff09;是一种用于监控和控制工业过程的计算机系统。它通常由两个主要部分组成&#xff1a;上位机和下位机。 上位机是SCADA系统中的主要控制中心&#xff0c;负责监控…

mysql笔记:24. 主从同步环境搭建

文章目录 主从同步的基本原理主从同步的搭建步骤1. 环境准备2. 配置主服务器&#xff08;Master&#xff09;3. 配置从服务器&#xff08;Slave&#xff09;4. 测试配置5. 常见故障5.1. 主从服务器上的MySQL版本不一致导致失败&#xff1f;5.2. Slave_IO_Running状态异常&#…

【No.10】蓝桥杯构造法|两道例题(C++)

什么是构造 构造题 要求解题者通过观察问题的结构和规律&#xff0c;找到一种通用的方法或模式&#xff0c;使得在问题规模增大时&#xff0c;依然能够高效地得到答案。 在解决构造题时&#xff0c;以下几点思考是很重要的: 观察问题规模的增长:了解问题随着规模的增大&…

使用ollama + webui 运行任意大模型

安装ollama https://hub.docker.com/r/ollama/ollama docker run -d -v ~/Documents/work/softs/docker/ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama验证安装 # 进入容器docker exec -it ollama bash # 运行大模型 ollama run llama2 # 发送请求&…

【联邦学习贡献评估综述——未来展望(研究点)】

贡献评估的研究展望 参与方贡献评估作为激励参与方加入联邦的关键问题, 目前已有一些探索性研究工作, 但是现有工作在 价值度量有效性和可靠性、贡献评估方案公平合理性、评估算法在联邦学习应用上的性能和安全性等问题上 仍存在不足之处, 有待未来研究攻克这些挑战. 1. 设计…