C语言基础 Day 1

一、定义一个变量

变量:在运行过程中可以改变的。
作用域:花括号之间;
生命周期:程序/函数运行完,变量内存自动回收。
定义变量时可用数字 字母 下划线 组成
局部变量未初始化打印出来为error,默认值的16进制为0xcccccc;

二、定义一个常量

常量:在运行过程中不能改变的。
定义常变量时一定要同时初始化.
const:修饰的变量叫做常变量

三、宏定义

宏定义时变量要大写 。
后面的分号尽量不要加。例如int arr[PI]={};如果加了括号加会报错;会替换成arr[PI;]
重点: 预编译:宏替换,注释的替换(替换为空格);头文件的引入

四、栈与堆

  1. 栈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语言基础 入门学习(一)相关推荐

  1. C语言基础入门学习笔记

    前言 我是一个初中生,过完暑假就是一个高一的学生了.在这个暑假里,我学习了韦东山老师和唐佐林老师的课程,所以我写下这个笔记来记录自己的成长历程. C语言基础入门学习笔记 格式 #include < ...

  2. C语言基础入门学习--学习笔记

    C语言标准 1983年美国国家标准局(ANSI),开始制定C语言标准的工作 1989年该标准正式公布,一般称为ANSI C(C89或C90) 1999年ANSI/ISO联合委员会进行修改,增加了一些功 ...

  3. 【学习笔记】山东大学生物信息学——Perl 语言基础入门+高级

    文章目录 8.3 Perl 语言基础入门 8.3.1 第一个 Perl 8.3.2 Perl 的基本规则 8.3.3 字符串常用函数 8.3.4 数组常用函数 8.4 Perl 语言基础高级 8.4. ...

  4. MAYA 2022基础入门学习教程

    流派:电子学习| MP4 |视频:h264,1280×720 |音频:AAC,48.0 KHz 语言:英语+中英文字幕(根据原英文字幕机译更准确)|大小解压后:3.41 GB |时长:4.5小时 包含 ...

  5. Blender 3.0基础入门学习教程 Introduction to Blender 3.0

    成为Blender通才,通过这个基于项目的循序渐进课程学习所有主题的基础知识. 你会学到什么 教程获取:Blender 3.0基础入门学习教程 Introduction to Blender 3.0- ...

  6. 三维地形制作软件 World Machine 基础入门学习教程

    <World Machine课程>涵盖了你需要的一切,让你有一个坚实的基础来构建自己的高质量的电影或视频游戏地形. 你会学到什么 为渲染或游戏开发创建高分辨率.高细节的地形. 基于Worl ...

  7. SketchUp Pro 2021基础入门学习视频教程

    SketchUp Pro 2021基础入门学习视频教程 1280X720 MP4 |视频:h264,1280×720 |音频:AAC,44.1 KHz,2 Ch 流派:电子学习|语言:英语+中文字幕( ...

  8. Maya基础入门学习教程

    Maya基础入门学习教程 视频:.MKV, 1280x720, 共57节课 时长 4小时25分钟,3GB 语言:英语+中文字幕(根据原英文字幕机译更准确)+原英文字幕 指导老师:Shane Whitt ...

  9. Maya2022基础入门学习教程

    Maya2022基础入门学习教程 Maya 2022 Essential Training Maya2022基础入门学习教程 Maya 2022 Essential Training MP4 |视频: ...

  10. Blender基础入门学习教程 Learning Blender from Scratch

    Blender基础入门学习教程 Learning Blender from Scratch 流派:电子学习| MP4 |视频:h264,1280×720 |音频:aac,48000 Hz 语言:英语+ ...

最新文章

  1. 机器学习模型身后的数学和统计背景:统计与信息论Probability and Information Theory
  2. html文件里的scr是什么,HTML中关于url、scr、href的区别
  3. ZJOI2019游记
  4. 微型计算机性能指标以及分类
  5. python绘制3d机械图_使用python绘制3d的图形
  6. 组策略:交互式登录:不显示最后的用户名
  7. vue全选和取消全选(无bug)
  8. 使用源代码编译安装基于LAMP的网站架构
  9. vc2010, fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt解决办法
  10. 《css世界》常用技巧——读书笔记
  11. wordpress不登陆后台禁用插件
  12. Thread 类创建线程的五种基本写法
  13. Java对接谷歌邮箱-代码及其谷歌邮箱账号配置
  14. 基于matlab测量物体直径,基于MATLAB的不规则面积图像测量
  15. 极客时间 - Vim学习
  16. kab12.dll 病毒的分析
  17. mysql 修改结束符_在MySQL中,用于设置MySQL结束符的关键字是【】
  18. 量子计算机每次秒可达多少次,激光脉冲让运算速度提升百万倍 量子计算机有望实现室温运行...
  19. android模拟器自动化测试,安卓模拟器自动化测试工具
  20. 谷歌浏览器驱动国内镜像下载地址

热门文章

  1. 解决:Windows打开文件时选择打开方式-》选择其他应用-》时出现无效应用。
  2. 最新计算机cpu简介,电脑处理器性能排行榜 cpu天梯图介绍
  3. java-第十三章-类的无参方法(一)-模拟一个简单的购房商贷月供计算器
  4. 《东周列国志》第六回 卫石碏大义灭亲 郑庄公假命伐宋
  5. 计算机全键在线使用说明书,笔记本电脑键盘介绍图,笔记本键盘全部按键功能介绍说明-系统城...
  6. 【JavaScript应用篇】--实现文字的特效
  7. win7本地登录计算机,win7系统绑定微软账户到本地电脑上的具体办法
  8. 我眼中的光明·第六周·蓝天·一
  9. android绘制半圆弧线_半圆形进度条Android - 绘制半圆
  10. 手机淘宝app、xsign签名算法