C语言基础 入门学习(一)
C语言基础 Day 1
一、定义一个变量
变量:在运行过程中可以改变的。
作用域:花括号之间;
生命周期:程序/函数运行完,变量内存自动回收。
定义变量时可用数字 字母 下划线 组成
局部变量未初始化打印出来为error,默认值的16进制为0xcccccc;
二、定义一个常量
常量:在运行过程中不能改变的。
定义常变量时一定要同时初始化.
const:修饰的变量叫做常变量
三、宏定义
宏定义时变量要大写 。
后面的分号尽量不要加。例如int arr[PI]={};如果加了括号加会报错;会替换成arr[PI;]
重点: 预编译:宏替换,注释的替换(替换为空格);头文件的引入;
四、栈与堆
- 栈stack(包括栈顶和栈顶);
栈的特性:先进先出 。 1M—2M;
main()函数所有定义的变量都存储在堆里。
2.堆heap
五、运算符
():强转,函数参数;提升优先级
~ :按位取反;
>>:按位右移;
<<:按位左移
^:异或
&:与
|:或
例如: 11:0000 1101;
~11:1111 0010;
11>>1:0000 0110; 右移补符号位 右移相当于除法
11<<1:0001 1010 左移补数字零 左移相当于乘法
一个数扩大n倍 ,则左移2位 相当于11*2^n;
13:0000 1101
11&13: 0000 1001
11|13: 0000 1111
11^13: 0000 0110 异或:一样时为0,不一样为1.
++ --:自增,自减
```int a = 10;int b = a++;//tmp=a;b=tmp;a++;int c = 10 ;int d = ++c;//++c;tmp=c;d=tmpprintf("a==%d/n b==%d/nc==%d/nd==%d/n",&a&b&c&d);
a== 11 b==10 c==11 d==11
&&、||:逻辑与,逻辑或
int i=1,i2=0,i3=2;
if(i++&&i2++&&i3++)//输出的 i=2,i2=0,i3=2 并且不执行if的内容int i=1,i2=0,i3=2;
if(i++||i2++||i3++)//输出的 i=2,i2=0,i3=2 并且执行if的内容
&& 全为真执行if语句,if条件内遇到假后面语句不执行。
|| 有一个为真执行if语句,if条件内遇到真后面语句不执行。
*:指针,解引用,乘号
int a = 10;
int* p = &a;
* p = 100;//此时a的值为100int** pp = &p;//二级指针
**pp = 1000;//此时a的值为1000
sizeof:求字节数
int* p = &a;
char* p = (char*)&a;`
cout<<sizeof(p);//所有的指针类型字节数都为4
cout<<sizeof p;
cout<<sizeof(int);
cout<<sizeof(++a);//sizeof在编译时期,因此不管里面运算值,不参与运算只求字节数。
C语言基础 入门学习(一)相关推荐
- C语言基础入门学习笔记
前言 我是一个初中生,过完暑假就是一个高一的学生了.在这个暑假里,我学习了韦东山老师和唐佐林老师的课程,所以我写下这个笔记来记录自己的成长历程. C语言基础入门学习笔记 格式 #include < ...
- C语言基础入门学习--学习笔记
C语言标准 1983年美国国家标准局(ANSI),开始制定C语言标准的工作 1989年该标准正式公布,一般称为ANSI C(C89或C90) 1999年ANSI/ISO联合委员会进行修改,增加了一些功 ...
- 【学习笔记】山东大学生物信息学——Perl 语言基础入门+高级
文章目录 8.3 Perl 语言基础入门 8.3.1 第一个 Perl 8.3.2 Perl 的基本规则 8.3.3 字符串常用函数 8.3.4 数组常用函数 8.4 Perl 语言基础高级 8.4. ...
- MAYA 2022基础入门学习教程
流派:电子学习| MP4 |视频:h264,1280×720 |音频:AAC,48.0 KHz 语言:英语+中英文字幕(根据原英文字幕机译更准确)|大小解压后:3.41 GB |时长:4.5小时 包含 ...
- Blender 3.0基础入门学习教程 Introduction to Blender 3.0
成为Blender通才,通过这个基于项目的循序渐进课程学习所有主题的基础知识. 你会学到什么 教程获取:Blender 3.0基础入门学习教程 Introduction to Blender 3.0- ...
- 三维地形制作软件 World Machine 基础入门学习教程
<World Machine课程>涵盖了你需要的一切,让你有一个坚实的基础来构建自己的高质量的电影或视频游戏地形. 你会学到什么 为渲染或游戏开发创建高分辨率.高细节的地形. 基于Worl ...
- SketchUp Pro 2021基础入门学习视频教程
SketchUp Pro 2021基础入门学习视频教程 1280X720 MP4 |视频:h264,1280×720 |音频:AAC,44.1 KHz,2 Ch 流派:电子学习|语言:英语+中文字幕( ...
- Maya基础入门学习教程
Maya基础入门学习教程 视频:.MKV, 1280x720, 共57节课 时长 4小时25分钟,3GB 语言:英语+中文字幕(根据原英文字幕机译更准确)+原英文字幕 指导老师:Shane Whitt ...
- Maya2022基础入门学习教程
Maya2022基础入门学习教程 Maya 2022 Essential Training Maya2022基础入门学习教程 Maya 2022 Essential Training MP4 |视频: ...
- Blender基础入门学习教程 Learning Blender from Scratch
Blender基础入门学习教程 Learning Blender from Scratch 流派:电子学习| MP4 |视频:h264,1280×720 |音频:aac,48000 Hz 语言:英语+ ...
最新文章
- 机器学习模型身后的数学和统计背景:统计与信息论Probability and Information Theory
- html文件里的scr是什么,HTML中关于url、scr、href的区别
- ZJOI2019游记
- 微型计算机性能指标以及分类
- python绘制3d机械图_使用python绘制3d的图形
- 组策略:交互式登录:不显示最后的用户名
- vue全选和取消全选(无bug)
- 使用源代码编译安装基于LAMP的网站架构
- vc2010, fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt解决办法
- 《css世界》常用技巧——读书笔记
- wordpress不登陆后台禁用插件
- Thread 类创建线程的五种基本写法
- Java对接谷歌邮箱-代码及其谷歌邮箱账号配置
- 基于matlab测量物体直径,基于MATLAB的不规则面积图像测量
- 极客时间 - Vim学习
- kab12.dll 病毒的分析
- mysql 修改结束符_在MySQL中,用于设置MySQL结束符的关键字是【】
- 量子计算机每次秒可达多少次,激光脉冲让运算速度提升百万倍 量子计算机有望实现室温运行...
- android模拟器自动化测试,安卓模拟器自动化测试工具
- 谷歌浏览器驱动国内镜像下载地址
热门文章
- 解决:Windows打开文件时选择打开方式-》选择其他应用-》时出现无效应用。
- 最新计算机cpu简介,电脑处理器性能排行榜 cpu天梯图介绍
- java-第十三章-类的无参方法(一)-模拟一个简单的购房商贷月供计算器
- 《东周列国志》第六回 卫石碏大义灭亲 郑庄公假命伐宋
- 计算机全键在线使用说明书,笔记本电脑键盘介绍图,笔记本键盘全部按键功能介绍说明-系统城...
- 【JavaScript应用篇】--实现文字的特效
- win7本地登录计算机,win7系统绑定微软账户到本地电脑上的具体办法
- 我眼中的光明·第六周·蓝天·一
- android绘制半圆弧线_半圆形进度条Android - 绘制半圆
- 手机淘宝app、xsign签名算法