指针在C语言中是一块很重要的内容,也是比较难理解的一块内容,我们需要反复理解反复巩固才可以对其有所了解。 之前也分享过指针相关的笔记,但是都比较杂,本篇笔记汇总一下指针相关的内容,包含了挺多指针相关的基础知识点。这篇笔记有点长,可以收藏下来慢慢阅读。 如: int a=1,b=2,c=3; int *arr[3] = {&a,&b,&c}; 示例程序: #include <stdio.h> int main(void) { int a = 1, b = 2, c = 3; //定义一个指针数组 int *arr[3] = {&a, &b, &c};//也可以不指定长度,直接写作 int *parr[] //定义一个指向指针数组的指针 至于为什么func与&func的含义相同,《嵌入式Linux上的C语言编程实践》这本书中有如下解释: 对于函数func来说,函数的名称就是函数代码区的常量,对它取地址(&func)可以得到函数代码区的地址
C语言基本数据类型 ---- Tip: 1B(字节) = 8位(字符) 1、数值类型 a、整型 1)、短整型(short、unsigned short(无符号短整型)):2 bytes c、long mIntVariable = 3; d、float mFloatVariable = 3.14; e、double mDoubleVariable = 3.14; f、char mChar = 'A'; 注意: 变量名命名规范: a、变量由数字、字母、下划线组成;eg:Name, Name1, Name_1 b、首字母必须是字母、下划线;eg:mAge, _age c、变量不能是C语言关键字或者保留字 typedef unsigned union void volatile while 格式类型转换符: 表示在当前位置需要声明一个指定类型的数据,供程序使用 数据类型与格式类型转换符对照表: char %c scanf("%c,%c", &mChar_1, &mChar_2); printf("mChar_1 = %c\nmChar_2 = %c\n", mChar_1, mChar_2); int number
一、主函数 C语言的主函数是main()函数,有且仅有一个。 例如: int main() { return 0; } 是一个标准的C语言主函数。 二、输入、输出函数 C语言中的输出函数为printf,输入函数为scanf,使用前需要引用头文件#include <stdio.h>。 (2)C语言中的常见单位(从小到大): bit(比特)<byte(字节)<KB<MB<GB<TB<PB<..... 1byte = 8bit 1KB = 1024byte 1MB = 1024KB 四、变量和常量 4.1 变量的使用 C语言中常量是不变的值,变量是可变的值 创建变量的使用: int age = 10; char ch = 'w'; float weight = 45.5f 4.3 常量 C语言中的常量分为字面常量,const修饰的常变量,#define 定义的标识符常量,枚举常量。 (1)字面常量:100,'w',3.14等。
volatile unsigned long *)0x00000000) 即可实现对内存地址的读写操作:读操作:tmp = RAM|_ADDR; 写操作: RAM_ADDR = tmp; 2、
习C语言始终要记住“曙光在前头”和“千金难买回头看”,“千金难买回头看”是学习知识的重要方法,就是说,学习后面的知识,不要忘了回头弄清遗留下的问题和加深理解前面的知识,这是我们最不易做到的,然而却又是最重要的 学习C语言就是要经过几个反复,才能前后贯穿,积累应该掌握的C知识。 欢迎初学和进阶中的小伙伴 一 学好C语言的运算符和运算顺序 这是学好《C程序设计》的基础,C语言的运算非常灵活,功能十分丰富,运算种类远多于其它程序设计语言。 如:求ax^2+bx+c=0的根 分析:因为当b^2-4ac>=0时,方程有两个实根,否则(b^2-4ac d=b*b-4*a*c; else 嵌套分支语句:其语句格式为: if(条件1) ; else 4、模块化程序结构 C语言的模块化程序结构用函数来实现,即将复杂的C程序分为若干模块,每个模块都编写成一个C函数,然后通过主函数调用函数及函数调用函数来实现一大型问题的C程序编写。
纠缠不清的C语言位域(位段)详解 C语言知识整理:内存管理(详细版) C语言结构体占用内存总结 写给小白看的C语言动态内存管理,含笔试题 16个C语言经典问题(收藏) 常见的C语言内存错误及对策,又长知识了 网络相关 计算机网络基础知识总结 关于 TCP/IP,必知必会的十个问题! 嵌入式 长文 | 分享一篇万字嵌入式C语言知识大汇总 工具 使用VS2019编写C语言程序,环境安装配置+代码调试 VSCode配置C语言开发环境完整版,附MinGW安装包 程序员必备的10款工具软件! 2020年12月编程语言排行榜,C语言稳居第一 判了!国内「最牛删库跑路事件」程序员被判6年,公司损失10亿 95后程序员连续15天加班到凌晨2点在餐厅泪崩!看到955不加班的公司名单,酸哭了... 程序员离职后躲老家山洞 2 年,敲出 45 万行代码... 17张程序员壁纸(使用频率很高) 程序员真的是太太太太太太太太难了! 代码规范&优化 腾讯 Code Review 规范出炉!
学习C语言始终要记住“曙光在前头”和“千金难买回头看”,“千金难买回头看”是学习知识的重要方法,就是说,学习后面的知识,不要忘了回头弄清遗留下的问题和加深理解前面的知识,这是我们最不易做到的,然而却又是最重要的 学习C语言就是要经过几个反复,才能前后贯穿,积累应该掌握的C知识。 ? 一 学好C语言的运算符和运算顺序 这是学好《C程序设计》的基础,C语言的运算非常灵活,功能十分丰富,运算种类远多于其它程序设计语言。 如:求ax^2+bx+c=0的根 分析:因为当b^2-4ac>=0时,方程有两个实根,否则(b^2-4ac<0)有两个共轭复根。 4、模块化程序结构 C语言的模块化程序结构用函数来实现,即将复杂的C程序分为若干模块,每个模块都编写成一个C函数,然后通过主函数调用函数及函数调用函数来实现一大型问题的C程序编写。
,得到的结果正负号由第一个操作数决定 赋值操作符( = ) 下面直接举例子: 一般情况: Int a= 3; a=200; 连续赋值 Int a= 3; Int b= 4; Int c= 5; c=b=a+3; 等价于 Int a= 3; Int b= 4; Int c= 5; b=a+3 c=b 符合赋值符 int a = 10; a = a+3; a = a-2; 等价于 Int a= 10; a += 3; a -= 2 单目操作符 ++(自增1): 前置++(++a):先++,后使用(先自增1,后赋值) 后置++(a++):先使用
C 语言小知识 堆与栈(Heap and Stack) 堆相对比较容易理解, 就是计算机剩余的内存, 可以通过 malloc 函数访问获取堆内存。 栈的好处是简单, 当函数退出时, C 编译器将这些变量推出栈道进行清理。 这样可以简单的避免栈道上的变量有内存泄漏。
以下是C语言中几种基本数据类型的汇总,包括整型(int)、浮点型(float, double)、字符型(char)。 1.1. 整型(Integer Types) 整型用于存储整数值,没有小数部分。 四、控制语句 在C语言中,控制语句用于控制程序的流程,根据条件或迭代的需要执行不同的代码块。下面是对几种常见的控制语句的汇总。 在C语言中,数组是一个非常重要的概念,它被广泛用于各种编程任务中。以下是数组的汇总。【C语言进阶】数组与字符串_c 字符串数组-CSDN博客 5.1. 【C语言进阶】函数与模块_c语言模块-CSDN博客 7.1. 八、指针 指针是C语言中一个极其重要的概念,它允许程序直接访问和操作内存地址。通过指针,我们可以动态地分配内存、传递数组或结构体等大型数据结构给函数,以及实现复杂的数据结构和算法。以下是对指针的汇总。
今天我们来学习一下C++中线程相关的所有知识点。 unsetunsetstd::threadunsetunset std::thread 是 C++11 标准库中用于创建和管理线程的类,它提供了一种简单的方式来启动新的线程并执行指定的函数或可调用对象。 锁的类型:除了 std::mutex,C++11 还提供了其他类型的互斥锁,如 std::recursive_mutex、std::timed_mutex、std::recursive_timed_mutex unsetunsetstd::lockunsetunset std::lock 是 C++11 标准库中提供的一个函数模板,用于同时对多个互斥锁进行加锁,以避免发生死锁。 LockableN> void lock(Lockable1& lock1, Lockable2& lock2, LockableN&... lockn); 其中 Lockable1、Lockable2
C语言是面向过程的,而C++是面向对象的 相信这么努力的你 已经置顶了我 学习C语言始终要记住“曙光在前头”和“千金难买回头看”,“千金难买回头看”是学习知识的重要方法,就是说,学习后面的知识,不要忘了回头弄清遗留下的问题和加深理解前面的知识 学习C语言就是要经过几个反复,才能前后贯穿,积累应该掌握的C知识。 一 学好C语言的运算符和运算顺序 这是学好《C程序设计》的基础,C语言的运算非常灵活,功能十分丰富,运算种类远多于其它程序设计语言。 如:求ax^2+bx+c=0的根 分析:因为当b^2-4ac>=0时,方程有两个实根,否则(b^2-4ac d=b*b-4*a*c; else 嵌套分支语句:其语句格式为: if(条件1) ; else 4、模块化程序结构 C语言的模块化程序结构用函数来实现,即将复杂的C程序分为若干模块,每个模块都编写成一个C函数,然后通过主函数调用函数及函数调用函数来实现一大型问题的C程序编写。
最近发现一篇两万五千字的C++基础知识大汇总,可把我高兴坏了。白嫖,必须白嫖! 来源:高效程序员 一 、从”hello world“ 入门C++! C++总览简介 C++ 是一种静态类型的、编译式的、通用的、大小写敏感的、不规则的编程语言,支持过程化编程、面向对象编程和泛型编程。 C++ 被认为是一种中级语言,它综合了高级语言和低级语言的特点。 C++ 进一步扩充和完善了 C 语言,最初命名为带类的C,后来在 1983 年更名为 C++。 C++ 是 C 的一个超集,事实上,任何合法的 C 程序都是合法的 C++ 程序。 + 字符串 C++ 提供了以下两种类型的字符串表示形式: C 风格字符串 C++ 引入的 string 类类型 C 风格字符串 C 风格的字符串起源于 C 语言,并在 C++ 中继续得到支持。 编程语言提供了允许更为复杂的执行路径的多种控制结构。 循环语句允许我们多次执行一个语句或语句组,下面是大多数编程语言中循环语句的一般形式: ? 循环类型 C++ 编程语言提供了以下几种循环类型。
一、C语⾔的基本概念与发展历史 1.1 人和计算机进行交流的语言 通常,我们使用英语、中文等语言来进行两个人之间的交流。 然而C语言只不过是众多语言中的一种,像C++/Java/Go/Python都是计算机语⾔。 1.2 C语言的辉煌和历史 C 语⾔最初是作为 Unix 系统的开发⼯具⽽发明的。 虚拟现实仿真:这个也是发展很快的计算机领域,目前各种数字地球,数字城市,虚拟地理环境什么的,出现了这方面的大量应用 C语言出现时间较早,其他语言基本都是在C语言之后出现,或者在C语言的基础上进行创造 2.5 在VS上创建新项目 2.5.1 写代码的前的步骤 1、创建项目(代码是在项目中管理的) 2、创建.c文件 3、写C语言代码,邀严格按照C语言的语法来写!! c"); return 0; } C语⾔字符串中⼀个特殊的知识,就是在字符串的末尾隐藏放着⼀个 \0 字符,这个 \0 字符是字符串 的结束标志。
这篇介绍C语言里函数的定义、子函数的使用。接着介绍变量的作用域,定义全局变量、静态变量、只读变量、变量初始化等等。 定义一个函数 int func(int a,int b) { } <函数的返回值类型> <函数名称>(函数的形参列表,....) { 函数代码主体部分; } <函数的返回值类型>: 返回值类型可以是C语言支持任何类型 c=a+b; return c; //给调用者返回结果 } 二、函数练习作业 (1)编写一个判断某一年是否是闰年的函数。 \n"); } return 0; } (2)该函数由主函数调用,判断平年和闰年。 2.如果局部变量名称与全局变量名称相同,优先使用局部变量。
一、初识C语言 1.C语言的起源 C语言是什么? 在日常生活中,我们人与人交流使用的汉语、英语、日语等是属于我们人与人之间的语言。 C语言的设计思想影响了许多后来的编程语言,如C++、Objective-C、Java等。 2.C语言的基本结构 一个c程序,不管它是复杂还是简单,都必须有且只有一个主函数,主程序从main函数开始执行,直到main函数结束为止。 我们常用的头文件有: 2.printf和库函数 在这里,我们来写第一个C语言程序。 我们写了printf这个函数,它是C语言标准库中提供的一个现成的函数,其作用是在屏幕上打印信息。 C语言字符串中有一个特殊的知识,就是在字符串的末尾隐藏存放着一个字符\0,这个\0字符是字符串的结束标志。 我们来看下面这些更直观的现象: 为什么会出现这样的现象呢?
一、C语言的特点 优点:代码量小,速度快,功能强大 缺点:危险性高,开发周期长,可移植性弱 二、C的应用领域 1.系统软件开发 操作系统:Windows , Linux , Unix 驱动程序:主板驱动 ,显卡驱动,摄像头驱动 数据库:DB2,Oracle , Sql server 2.应用软件开发 办公软件:Wps 图形图像多媒体:ACDSee , Photoshop , MediaPlayer 嵌入式软件开发 :智能手机,掌上电脑 游戏开发:2D , 3D游戏 三、学习C语言需要的软件 Microsoft Visual C++ 6.0 请输入 四、如何操作Microsoft Visual C++ 6.0 1 .点击下载安装完毕的Microsoft Visual C++ 6.0 2.在打开的界面找到菜单栏里的文件------新建,然后出现如下界面 新建完成后就可以敲代码了,下面是我写的一个简单的代码 程序写好了 ,在软件中找到下图所示的位置,对程序进行保存,检查和执行 关闭工作空间 同样是点击菜单栏中的文件-------点击关闭工作空间,(若不是这样操作进行关闭,则会影响下次新建程序的执行) 想要一起学习c+
C语言常用函数汇总表(概念功能) 以下是每个函数的概念功能和使用,按类别分类并以表格表示。 double num = (double)intVar; 通过这些表格和示例,你可以掌握C语言中各类常用函数的功能和使用方法。如果你需要进一步深入了解某个函数或需要更多示例,随时告诉我! 2. C语言常用函数汇总表(标准格式) 以下是按类别分类的C语言常用函数汇总表,包含所属头文件、函数的标准格式及简单的示例代码。表格之后的示例代码综合展示了这些函数的使用,并包含了详细的注释。 数学函数:使用pow函数计算2的3次幂,并格式化输出结果。 时间函数:使用time函数获取当前时间,并使用ctime将时间转换为可读格式输出。 这段代码演示了如何在C语言中使用多种常用函数和布尔类型。 通过这些示例,您可以更好地理解C语言的基本功能和标准库函数的用法。 3. 结束语 本节内容已经全部介绍完毕,希望通过这篇文章,大家对C语言中常用函数有了更深入的理解和认识。
01 C语言程序的结构认识 用一个简单的c程序例子,介绍c语言的基本构成、格式、以及良好的书写风格,使小伙伴对c语言有个初步认识。 2、main()——在c语言中称之为“主函数”,一个c程序有且仅有一个main函数,任何一个c程序总是从main函数开始执行,main函数后面的一对圆括号不能省略。 推荐个10天入门C/C++的公众号:C语言入门到精通 标识符分为如下三类 — 1、关键字 关键字是具有特定含义的,专门用来说明c语言特定成分的一类标识符,不能用作用户的标识符。 2、预定义标识符 预定义标识符在c语言中也有特定的含义,但可以用作用户标识符,预定义标识符分为两类: 1)、库函数名字,比如printf,scanf,sin,isdigit等 2)、编译处理命令名,比如 (注意:c语言中没有直接表示二进制的整型常量,在c语言源程序中不会出现二进制。)
形参用字符指针变量接收arr,count作为计数器,记录字符个数,当记录到’\0'时,循环停止,返回count; 二,使用指针访问数组 1.1一维数组 int main() { int arr[10] = { 1,2,3,4,5,6,7,8,9,10 代码展示: int main() { int arr[10]={1,2,3,4,5,6,7,8,9,10}; int (*p)[10]=&arr; for(int i=0;i<10;i int a=10; int* p1=&a; int** p2=&p1; 对指针变量p2来说,它先于*结合,证明他是一个指针,再与int*结合,证明它所指向的对象是整形指针类型,是一个二级指针。 int* arr[10];//arr先于[10]结合,说明它是一个数组,再与int*结合,说明它的元素类型是int* 指针数组模拟二维数组 这里,arr1就是一维数组arr1首元素地址, 同理,arr2, int arr1[3]={1,2,3}; int arr2[3]={2,3,4}; int arr3[3]={3,4,5}; int *arr[3]={arr1,arr2,arr3};