前期准备
博客: 坚持做好博客,作为知识输出来更好的把握知识
git: 慢慢拓展学习git 不能只懂三板斧(弄好小绿点)
挤时间: 欲戴王冠 必承其重
学好编程,不仅仅是学好c语言:
必须学好:计算机语言、算法和数据结构、操作系统、计算机网络
BIT-1-初识c语言
·基本了解知识,不做详细讲解,后期课程细讲
1.什么是c语言?
- ①c语言是一门高级语言,广泛应用于底层开发。
低级 早期的机器语言是二进制语言。010001000100
↓ 汇编语言。 10010-加法,add助记符
b语言
高级 c语言 c++ python java
- ②二十世纪八十年代,为了避免各开发厂商用的c语言语法产生差异,由美国国家标准局为c语言制定了一套完整的美国国家标准语法,成为ANSI C,作为c语言最初的标准。
- c语言是面向过程的,与c++ java等面向对象的有所不同
2.第一个c语言程序
- 主函数的写法 int main()
- 是程序的入口,程序将从main函数开始运行
- 一个工程中,有且仅有一个主函数
- 函数体 { }中间的这些
- 库函数 如printf
- 库函数的使用,得包含对应的头文件 #include<>
快捷键:
编译+链接+运行 : ctrl+f5 (fn+ctrl+f5)
逐过程一步一步:f10
3.数据类型
char、short、int、long、long long、float、double
一、计算机中的单位:
- bit---比特位 二进制中的一个1或0就是一个bit
- byte-字节 八个bit就是一个byte
- 1kb=1024byte 后面都是1024为换算单位
- kb、mb、gb、tb、pb
二、float:
当使用 float weight=55.5; 编译器会默认认为,直接写出来的小数是double类型的
float weight=55.5f; 这样就确定是float类型了。
三、变量 常量
变量:
- 变量的分类
- 全局变量 定义在大括号的外部
- 局部变量 定义在大括号内部
- 局部变量和全局变量的名字冲突的情况下,局部优先。如下显示的a为9999
-
int a=100; int main(){ int a=9999; printf("a"); }
- scanf常见错误:
- 报错,说unsafe 建议用scanf_s 替换
- vs编译器认为,c语言提供的scanf函数是不安全的,所以vs提供了一个安全的版本scanf_s 建议就用scanf,scanf_s只有vs能编译出来。
- 具体:
- char arr[5]={0};
- scanf("&s",arr);
- 此时如果用户输入aaallkjjisoax,明显多于5个字符
- 但scanf不会管,还是会直接把这些数字给arr,所以不安全。
- 解决方法:在第一行加入代码
- #define crt_secure_no_warnings 1
- vs编译器认为,c语言提供的scanf函数是不安全的,所以vs提供了一个安全的版本scanf_s 建议就用scanf,scanf_s只有vs能编译出来。
- 报错,说unsafe 建议用scanf_s 替换
变量的作用域和生命周期
- 作用域通常指,一个变量哪里可以使用。
- 1、局部变量的作用域是变量所在的局部范围
- 2、全局变量的作用域是整个工程。
- 生命周期指,一个变量从创建到销毁之间的时间段
- 1、局部变量从进入作用域开始,出作用域结束。
- 2、全局变量是整个程序的生命周期。