| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> C++知识库 -> 编辑C语言编程学习笔记(鹏版)2021/7/6 -> 正文阅读 |
|
[C++知识库]编辑C语言编程学习笔记(鹏版)2021/7/6 |
本人是计科的专业,但是能力相当于新手, 所以下列笔记虽然我检查了几遍,但还是可能会有不对的地方,望指出 (你们这么多人,不要被我带跑偏了TVT) 1.初识C语言 什么是C语言 C语言是一种计算机语言 计算机语言是什么? 人和计算机交流的语言,C/C++/JAVA/python 语言的发展:低级语言———>高级语言(进化类比照相机发展史) 二进制语言 硬件-电-正电/负电 ????????????????1 ??????0 初识科学家要翻二进制手册 10100001 - ADD- 助记符-汇编语言 B语言 C语言-C++ ???---进化到高级语言 C语言——>早期不是很成熟——>成熟——>流行 国际标准:ANSI C-89- ????——C89/C90标准 C99/C11并不流行----不少的编译器不支持 常见的编译器Clang,GCC,WIN-TC,SUBLI 写C代码步骤 1.创建工程、新建项目,选中Visual ?C++——>选中空项目——>设置名称,存储位置 c代码 .c - 源文件 .h - 头文件(head文件最头部) 2.右键添加新建项,设置文件名为xxxx.c 3.写代码 #include<stdio.h> ?????????????????//包含一个叫stdio.h的文件 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//std-标准 standard input output(标准输入输出) int main()? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//主函数-程序的入口-main函数有且只有一个(在此地按住Fn+F10后会从此运行开 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 始) ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //int是整数型的意思 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//main前面的int表示main函数调用返回一个整型值(void main()这种是过时的写 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 法) { printf("hello\n"); ?????????????????//这里完成任务 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//在屏幕上输出hello ?world ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//函数-print function-printf-打印函数(输出显示) ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//双引号内是显示的内容,斜杆n是换行 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//库函数-C语言本身提供给我们使用的函数——是别人的东西——所以要打招呼——即# ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? include return 0;? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//返回的意思=0 } Ctrl+F5=直接运行 Fn+Ctrl+F5=执行过程显示 Fn+F10=坐标处开始运行一行 此时因为执行过快一闪而过 所以要右击工具栏里的项目名称(test-2-27)进入属性页 配置属性——链接器——系统——子系统,将其改为控制台 再次运行即可得到不灭的显示 数据类型 char? ? ? ? ? ? ? ? ? ? ? ? ? ? //字符数据类型? ? ? ? ? ? ? ? ? ? ? ? ? %c short/short int? ? ? ? ? ?//短整型? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?%d int? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //整型? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?%d long? ? ? ? ? ? ? ? ? ? ? ? ? //长整型? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?%d long long? ? ? ? ? ? ? ? ?//更长的整型? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? %d float? ? ? ? ? ? ? ? ? ? ? ? ?//单精度浮点数? ? ? ? ? ? ? ? ? ? ? ? ? ? ?%f double? ? ? ? ? ? ? ? ? ? //双精度浮点数(小数点更精确) %lf %d——打印整型 %c——打印字符 %f——打印浮点数字--打小数(%.1f表示精确到小数点后一位 ) %p——以地址的形式打印 %x——打印16进制数据 %o——打印8进制数据 %s——打印字符串 字符类型使用方法 int main() { char ch=’A’? ? ? ? ? ? ? ? ? ? ? ? ? ? //字符需要用单引号‘’括起来,字符串用双引号“” ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //为该字符向内存申请空间来存放——字符类型 printf("%c\n",ch); ??????????????????//%c--打印字符格式的数据(表示我以字符的形式来打印ch) return 0; } 整型使用方法 int main() { int age=20; printf("%d",age); ????????????????????//%d--打印整型十进制数据 计算该字符所占内存 int main() { printf("%d\n",sizeof(char)); ?????????????//sizeof表示谁谁的大小 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //sizeof(char)表示字符型数据所占内存的大小 return 0; } char——>1字节 short——>2字节 Int——>4字节 long——>4/8字节 long long——>8字节 float——→4字节 double——→8字节 字节(计算机中的单位) bit - 比特位 byte - 字节=8个比特位 kb=1024字节 mb(兆B)=1024kb gb=1024mb tb=1024gb pb=1024tb 因为计算机是硬件,要靠通电的变化正电(1)负电(0)1个比特位仅能存放一个1或0, 只能遵循二进制原则(对比十进制计算学习,例:010=0*2^2+1*2^1+0*2^0) 所以细化这些类型是为了使用对应有限的类型减少内存使用量,合理节省优化程序大小。 C语言标准规定sizeof(long)>=sizeof(int)所以long对应4或8取决于平台 定义变量的方法 int age=150; float weight=45.5f; char ch=’w’; 类型+变量名 附一个值 变量的分类
例: #include<stdio.h> int num2=20;? ? ? ? ? ? ? ? ?//全局变量-定义在代码块({})之外的变量 int main() { int num1=10; ???????????????//局部变量-定义在代码块({})内部 return0; } 注意:1.全局变量与局部变量的名字建议不要相同-容易产生误会,产生bug 2.当局部变量和全局变量的名字相同的时候,局部变量优先 下列代码在C语言中会显示错误,C++不会。 int main() { //计算2个数的和 int num1=0; int num2=0; //输入数据-使用输入函数scanf scanf("%d%d",&num1,&num2); ?//取地址符号& ? ?????????????????????????????如果出错,认为scanf不安全则可能是vs中的SDL检查,此时右键单击工程文件——属性——c/c ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?++——SDL检查选项——否 ????或者用scanf_c ??????????????????????????????因为scanf是C语言提供的,而scanf_s不是标准C语言提供的,是VS编译器提供的,所以最好不 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 用这个,因为此时就不具备跨平台性、可移植性。 ??????????????????????????????所以我们仍用scanf,但是在源文件第一行要加上#define _CRT_SECURE_NO_WARNINGS 1 ??????????????????????????????意思是让警告全部 ??失效,define意思是重定义 ??????????????????????????????VS显示不安全是因为,分配了5字节的空间但是用户输入了10字节,就会导致sccanf()读到10字 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 节 int sum=0;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //C语言语法规定,变量要定义在当前代码的最前面 sum=num1+num2; printf("sum=%d\n",sum); return 0; } 全局加入#define _CRT_SECURE_NO_WARNINGS 1方法 开始菜单中找其图标右击——单击属性——看快捷方式的目标中文件位置——在计算机中找到该文件单击——找到并打开VC——找到并打开vcprojectitems工程文件——找到并打开newc++file.cpp——在记事本中打开并粘贴#define _CRT_SECURE_NO_WARNINGS 1或在Notepad++中打开并粘贴#define _CRT_SECURE_NO_WARNINGS 1——保存(Ctrl+s)如果出现失败则按确定重新启动这个文件——自动退出后再重新点进去保存就可以了 下列代码在C语言与C++中都正确 int main() { ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //计算2个数的和 int num1=0; int num2=0; int sum=0;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//C语言语法规定,变量要定义在当前代码的最前面 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//输入数据-使用输入函数scanf scanf("%d%d",&num1,&num2); ?//取地址符号& ????? sum=num1+num2; printf("sum=%d\n",sum); return 0; } 变量的作用域和生命周期 作用域 程序设计概念,通常来说,一段程序代码中所用到的名字并不总是有效/可用的,而限定这个名字的可用性的代码范围就是这个名字的作用域。
第一个文件: int main() int a=2021; 第二个文件: ???????????int main() ???????????{ ????????????extern int a; ???????????//需要声明标志符,声明a是由extern外部符号来的 ????????????printf("a=%d\n",a); ????????????return 0; ????????????} 生命周期 变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段
此学习笔记由在哔哩哔哩动画观看《c语言编程 C语言入门 c语言(C语言程序设计教程 c语言视频教程 c语言零基础入门教程 学习c语言 c语言视频教程 c语音 C语言教程 C语言编程项目 C语言》学习总结 (这个不是鹏哥的号,可以从评论区找到鹏哥B站号链接)B站链接https://www.bilibili.com/video/BV1q54y1q79w |
|
C++知识库 最新文章 |
【C++】友元、嵌套类、异常、RTTI、类型转换 |
通讯录的思路与实现(C语言) |
C++PrimerPlus 第七章 函数-C++的编程模块( |
Problem C: 算法9-9~9-12:平衡二叉树的基本 |
MSVC C++ UTF-8编程 |
C++进阶 多态原理 |
简单string类c++实现 |
我的年度总结 |
【C语言】以深厚地基筑伟岸高楼-基础篇(六 |
c语言常见错误合集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年3日历 | -2025/3/4 11:02:57- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |