【c语言】TIMI哥听课笔记

计算机的组成

主储存器:内存条,硬盘

CPU内部:运算器,控制器,寄存器

进制转化:二转八拆三,二转十六拆四

基本数据类型

常量:整型常量(十进制,0x十六,0八进制),实型常量(小数,科学计数),字符型常量‘ ’,字符串型常量“”

变量:计算机内存里需要改变的数据

整型

Float的精度为7,double的精度为16,从整数部分开始算

c语言默认浮点数为double,故标准写作float a=0.154549f;

转义字符

:特殊的字符常量,以“\“开头,后面跟一个或几个字符。转义字符有特殊的含义,不同于字符原有的意思,故称’转义‘。

数据的输入输出:

#include<stdio.h>

字符输出函数putchar

字符输入函数getchar

格式输出函数printf:如果类型不匹配则失败

格式输入函数scanf:类型不匹配则失败

强制类型转换:注意精度丢失、溢出、拉满(自动类型转换不会丢失精度)

Int i;

i=(int)?.?

直接将小数点后的数丢掉

两种死循环

 for(表达式1;条件表达式;表达式2)先执行表达式1,然后判断条件是否成立,如果成立则继续执行代码

goto 结束;

结束:;(若下面紧挨着定义则需要分号)

Int a=0;

Char* name ="hello zeng";//此方式初始化字符串为常量,不能修改

Char name【20】=“hello zeng”;//用数组存的字符串是变量,可以修改

Int str =printf(“abcd”);

字符串处理

Char str[]={'q','w'};//仍然烫烫烫,因为单引号不会自动加0

C语言函数的声明和定义!

函数的声明,需要告诉编译器函数的一些信息:返回类型,参数列表,函数名

#pragma once//防止头文件重复包含

函数定义中,参数名不可省略

变量的存储类别

栈上分配的内存是由系统分配和释放的空间有限,在复合语句或者函数运行结束后就会被系统自动释放。而堆区分配的内存是由程序员通过编程自己手动分配和释放的,空间很大,储存自由。

auto:默认

extern:从main.c中访问其他.c文件中的变量

全局变量,局部变量都自动初始化为0

快速实现程序打包!

将debug变成release

指针

指针变量保存的谁的地址,那么我们就说指针指向谁

数据类型Int* :指针变量,32为下4个字节大小,64位下8个字节大小

null为系统保留地址0x00000000

Const int*p,说明const修饰的指针指向的内存空间不能通过指针修改

int *const p,说明指针指向不能修改

动态内存分配!

动态内存分配的意义

动态内存分配的方法:

使用C语言提供的一系列函数即可

大端储存和小端储存!

低地址存高字节:大段存储;高地址存低字节:小端存储

+

宏定义#define:替换

typedef:给类型取别名

二维数组的每个元素都是一个一维数组,最大存储单元是一维数组

正确写法:指向整个数组的指针

:,位段,在结构体中的成员的后面使用,后面制定多少bit

Byte uint8, halfword uint16, word uint32

文件操作的基本概念!

多次写入缓存区,最终从缓冲区一次性写入对象

文件指针:指向文件的指针

文件位置指针:用来遍历数据的

C语言标准头文件:stdarg.h

函数正确接收可变参数列表

函数参数的存储,从右至左依次入栈。->内存是连续的

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

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

相关文章

【Altium】AD-检查原理图中元器件未连接的Passive Pin

1、 文档目标 如何让原理图编译时找出元器件上未连接的Passive Pin 2、 问题场景 当引脚属性&#xff08;Pin type&#xff09;为passive时&#xff0c;原理图编译的默认规则是不会去检查它们是否有连接的。在实际设计过程中&#xff0c;经常会有导线虚连&#xff0c;漏连的事…

24长三角B题1-5问完整代码+15页保姆级思路已更新

比赛题目的完整版思路可执行代码数据参考论文都会在第一时间更新上传的&#xff0c;大家可以参考我往期的资料&#xff0c;所有的资料数据以及到最后更新的参考论文都是一次付费后续免费的。注意&#xff1a;&#xff08;建议先下单占坑&#xff0c;因为随着后续我们更新资料数…

添加屏幕照片太大了怎么缩小?改变图片大小这几个方法够了

现在我们经常使用手机、平板电脑和相机拍摄照片&#xff0c;然而&#xff0c;有时候我们可能会遇到一个常见的问题就是照片的尺寸太大&#xff0c;难以在特定场合或平台上使用&#xff0c;其实不用担心&#xff0c;本教程将向大家介绍几个如何简单地调整图片大小的方法&#xf…

06_机器学习算法_朴素贝叶斯

1. 朴素贝叶斯的介绍与应用 1.1 朴素贝叶斯的介绍 朴素贝叶斯算法(Naive Bayes, NB)是应用最为广泛的分类算法之一。它是基于贝叶斯定义和特征条件独立假设的分类方法。由于朴素贝叶斯法基于贝叶斯公式计算得到,有着坚实的数学基础,以及稳定的分类效率。NB模型所需估计的…

【Linux】线程周边001之多线程

&#x1f440;樊梓慕&#xff1a;个人主页 &#x1f3a5;个人专栏&#xff1a;《C语言》《数据结构》《蓝桥杯试题》《LeetCode刷题笔记》《实训项目》《C》《Linux》《算法》 &#x1f31d;每一个不曾起舞的日子&#xff0c;都是对生命的辜负 目录 前言 1.线程的理解 2.地址…

狙击策略专用术语以及含义,WeTrade3秒讲解

想必各位交易高手对狙击策略不会陌生吧!但你想必不知道狙击策略的开发者为了推广狙击策略&#xff0c;在狙击策略基础的经典技术分析理论引入了自己的术语。今天WeTrade众汇和各位投资者继续了解狙击策略专用术语以及含义。 一.BL 银行级别(BL)是前一日线收盘的级别。时间是格…

外贸业务中的12个“坑”,你踩到了吗?

在竞争激烈的外贸领域&#xff0c;企业在拓展市场的同时&#xff0c;也面临着各种潜在的陷阱和风险。对于外贸公司而言&#xff0c;如何在复杂的交易过程中识破陷阱&#xff0c;防范潜在风险&#xff0c;成为确保企业长远发展的关键一环。 以下是一些外贸企业可能遇到的陷阱&a…

栈和队列的相互实现(C)

目录 1.[用栈实现队列]<https://leetcode.cn/problems/implement-queue-using-stacks/description/>2.全套代码3.[用队列实现栈]<https://leetcode.cn/problems/implement-stack-using-queues/description/>4.全套代码 1.[用栈实现队列]https://leetcode.cn/proble…

【Linux系统编程】第十九弹---进程状态(下)

​​​​​​​ ✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】【C详解】【Linux系统编程】 目录 1、僵尸进程 2、孤儿进程 3、运行状态 4、阻塞状态 5、挂起状态 6、进程切换 总结 1、僵尸进程 上一弹…

AIGC文生视频:Sora模型报告总结

作为世界模拟器的视频生成模型 我们探索视频数据生成模型的大规模训练。具体来说&#xff0c;我们在可变持续时间、分辨率和宽高比的视频和图像上联合训练文本条件扩散模型。我们利用对视频和图像潜在代码的时空补丁进行操作的变压器架构。我们最大的模型 Sora 能够生成一分钟…

利用宝塔面板搭建nodejs网站(不使用pm2)

利用宝塔面板搭建nodejs网站&#xff08;不使用pm2&#xff09; 1. 准备代码文件2. 将代码上传至云主机3. 云主机配置3.1 绑定域名3.2 利用面板配置node环境3.3 利用面板增加node项目 4. 打开端口 暂时只演示http的。https类似&#xff0c;需要添加证书。 1. 准备代码文件 清单…

淘宝评论api接口的探索与实践

一、淘宝评论api接口简介 淘宝评论api接口是淘宝开放平台提供的一种数据接口&#xff0c;通过该接口&#xff0c;开发者可以获取淘宝商品的评论信息&#xff0c;包括评论内容、评论评分、评论时间等。此接口为开发者提供了丰富的评论数据&#xff0c;便于进行商品评价分析、营…