1.宏替换,完全展开替换,注意带来副作用

#include <stdio.h>
#define 打印语句 printf(“hello”);

Void
main(void)

{

If
(1)

打印语句;;

Else

….;

}

Void
main(void)

{

If
(1)

printf(“hello”);

;

Else

….;

}

2.程序编译链接的过程

.c
经过预处理,编译,汇编,链接,最终生成可执行程序(.exe/ELF)

3.常量,定义以后其值不能改变的数

宏定义一个常量

#define
PI 3.14

C语言关键字const

const
int TIEMS = 10;

例题:

Const
int b;

b
= 10;

4.变量,拥有固定大小的存储空间,里面存放的数值可以修改

5.标识符命名规则

6.变量的基本类型

char

short

Int

Long

Long
long

float

Double

隐式类型转换规则

小字节向大字节类型转换,低级别向高级别类型转换

例题:

double
result;

result
= 3 * 5 -2 + ‘a’ * 1.1

强制类型转换

Char
ch = ‘a’;

Int
b = 3 + (long)ch;

什么是表达式?

3

3+5

b-a

(int)(3*4-5+6/7+2.3)

精度丢失

void
main(void)

{

int
num = 0x12345678;

char
ch;

ch
= num;

printf(“%x”,
ch);

printf(“%d”,
num);

}

笔试题:测试当前电脑是大端存储还是小端存储数据。

小字节向大字节类型赋值时

无符号类型,高位直接填充0

有符号类型,高位填充符号位

-1
-》
1000
0001 -》1111
1110 –》1111
1111

例题:

Char
b = 3; ->0000 0011

Short
c = b; ->0000 0000 0000 0011

char
b = -3; ->1000 0011 -> 1111 1100 -> 1111 1101

Short
c = b; ->1111 1111 1111 1101

习题

  1. 65543转换为2进制,8进制,16进制

65543
… 1

32771
… 1

16385
…

字节单位转换

1KB
= 1024B

1MB =
1024KB

1GB = 1024MB

1TB = 1024GB

操作数,
运算符, 表达式,语句

4
+ 7;

;空语句

If
(表达式)

语句;

Else

语句;

While(表达式)

语句;

Int
fun(void)

{

Return
5;

}

Main()

{

Int
num = 4+ fun();

printf(“%d”,
num);

}

小括号应用

(4+5)*(9-2)

5%1.2
4.5%2

C语言当中1表示真,0表示假

关系运算符只有真和假(1和0)两种结果

3
==5 -》
0

5
> 1 -> 1

1
> 5 -> 0

输入:1234

输出:4321

1234%10
=》4

1234
/10 =》123

123
% 10 =》3

123/10
=》 12

12%10
=》2

12/10
=> 1

1
% 10 => 1

1/10
=》 0

自增自减运算符

Int
i = 3;

Int
a ;

a
= i++; a =3; i= 4;

a
= ++i; a=4; i=4;

5++;
?

(i+2)++;
?

i
= 3;

Printf(“%d,
%d, %d, %d, %d”, i++, ++i, ++I, i++, --i);

i
= ++i - ++i;

int
num;

num
= 5;

num
= i+3;

double
item = 3.1415926;

num
= item;

=与==

num
= 5;

if
(num = 8)

语句1;

else

语句2;

左值,可以看成是一个变量,左值是一个可以改变里面存储数据的变量。

int
a;

a
= 4;

const
int b;

b
= 5;

3+4
= 1;

int
a;

a
= 123;

&a
= 123; &a 
0xffff8000

a
+= 3; => a = a+3; => 3+=a; 3 = 3 + a;

短路操作

int
a = 5;

if
(4 < 3 && a = 2)

语句1;

else

语句2;

printf(“%d\n”,
a);

计算数123的各位相加和。如1+2+3=6

123%10
= 3

123/10
= 12

12%10 =2

12/10 =1

1%10 =1

1/10 =0

加密字典,所有字符+10.,当相加和超过127,从32‘
’空格字符从新开始排序。

I
love you =》
s*vy
o*#y口

‘0’
‘\0’

Ubuntu
linux 环境基本使用

开启一个终端

CTR+ALT+t

关闭一个终端

ALT+f4
exit

shell:单词语义贝壳,计算机语义命令解释器。

shell提示符

#:一般表示你是超级用户,root

$:一般表示你是普通用户

清除屏幕

clear
快捷键CTR+l

察看当前目录下有哪些文件

ls

察看当前目录

pwd

自动补齐路径和命令

tab键

进入目录

cd
目录路径(绝对路径,相对路径)

创建目录

mkdir
目录名

rmdir
删除空目录

rm
-r 删除非空目录

rm
删除一个文件

回家命令

cd

根目录讲解

/
称之为根目录

切换到字符控制台

CTR+ALT+SHIFT+(f1-f6)

切换回图形界面

ALT+f7

在命令行下翻屏

shift+pgup

shift+pgdn

进程管理命令

察看进程信息

ps
aux

kill
-9 进程号

kill
-SIGKILL 进程号

终止当前shell里面的前台进程

ctr+c

根据文件名查找文件

find
路径
-name
”文件名“

根据文件内容查找文件

grep
"内容"
路径
-R(递归查找的意思)

tar.gz打包命令

tar
zcvf test.tar.gz test

tar.gz解包命令

tar
zxvf test.tar.gz

tar
zxvf test.tar.gz -C 指定目录

tar打包命令

tar
cvf test.tar test

tar解包命令

tar
xvf test.tar

tar
xvf test.tar -C 指定目录

bz2包打包命令

tar
jcvf test.bz2 test

bz2包解包命令

tar
jxvf test.bz2

tar
jxvf test.bz2 -C 指定目录

[C++] Pen questions & linux cmd的更多相关文章

  1. Linux Cmd Tool 系列之—script & scriptreplay

    Intro Sometime we want to record cmd and outputs in the interactive shell sessions. However history ...

  2. linux/cmd中python路径导入ModuleNotFoundError: No module named 'xxx'

    在linux或者直接在cmd中运行python文件时 会遇到导包错误的情况ModuleNotFoundError: No module named 'xxx’由于不在pycharm中 所以这里不能将上 ...

  3. Linux Cmd Tool 系列之—alias

    The alias cmd list your current aliases. For example : alias Use alias to shorten a long cmd in curr ...

  4. Linux Cmd Tool 系列之—history & search command history

    History cmd is for list Bash's log of the historical cmd you typed 1. List last n commands history n ...

  5. [Linux]cmd to use

    0x01 Linux Perfermance Analysis in 60s 1> uptime ---load averages 2> dmesg -r | tail ---kernel ...

  6. linux cmd: ps

    每天一个linux命令(41):ps命令 http://www.cnblogs.com/peida/archive/2012/12/19/2824418.html Linux中的ps命令是Proces ...

  7. linux cmd: netstat

    每天一个linux命令:netstat  http://www.cnblogs.com/peida/archive/2013/03/08/2949194.html netstat命令用于显示与IP.T ...

  8. linux cmd: linux下解压命令大全

    linux下解压命令大全 .tar 解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)———————————— ...

  9. linux cmd

    Linux查找包含特定字符串的文件名的方法 Pasted from <http://www.jbxue.com/LINUXjishu/9790.html> find .|xargs gre ...

随机推荐

  1. Makefile编写 五 隐含规则

    隐含规则———— 在我们使用Makefile时,有一些我们会经常使用,而且使用频率非常高的东西,比如,我们编译C/C++的源程序为中间目标文件(Unix下是[.o]文件,Windows下是[.obj] ...

  2. STL容器——对map排序

    STL容器(三)——对map排序 对于map的排序问题,主要分为两部分:根据key排序:根据value排序.下面我们就分别说一下~ 1. 根据key进行排序 map默认按照key进行升序排序 ,和输入 ...

  3. JFreeChart API 说明(转)

    原地址 http://blog.csdn.net/mike_caoyong/article/details/7338160 JFreeChart目前是最好的java图形解决方案,基本能够解决目前的图形 ...

  4. [Java.web][eclipse]经验集

    自动提示部分内容来自:http://www.cnblogs.com/mashuangying2016/p/6549991.html 使用 Eclipse 调试 Tomcat 的设置: Window - ...

  5. 为什么Java程序占用的内存比实际分配给它的要多

    很多人错误的认为运行Java程序时使用-Xmx和-Xms参数指定的就是程序将会占用的内存,但是这实际上只是Java堆对象将会占用的内存.堆只是影响Java程序占用内存数量的一个因素.要更好的理解你的J ...

  6. ESXI5-WIN2008R2安装域控以及额外域笔记

    每次安装域控都要找教程,每次都没法一次性搞定.写个笔记吧...主要是给自己看的.写的比较含糊.不清楚的可以直接QQ本人. 1.安装WIN2008R2,192.168.188.10 2.上载SLICET ...

  7. 配置IVR实现语音

    1.新建系统录音档   登入FreePBX,在Admin面板下选择System Recordings,如下图:   在这个页面可以上传制作好的一些录音,例如像“欢迎致电XXX,按1中文,按2英文... ...

  8. 【洛谷】P1474 货币系统 Money Systems(背包dp)

    题目描述 母牛们不但创建了它们自己的政府而且选择了建立了自己的货币系统.由于它们特殊的思考方式,它们对货币的数值感到好奇. 传统地,一个货币系统是由1,5,10,20 或 25,50, 和 100的单 ...

  9. 02——微信小程序官方demo讲解——app部分

    第一节讲了目录结构,这节主要讲解下目录中app.js部分. 它由三部分组成app.js.app.json与app.wxss 1.JS部分 1.1概述 //app.js App({ onLaunch: ...

  10. ceph---luminous 块存储(RBD)搭建

    1. 创建pool 创建存储池: ceph osd pool create {pool-name} {pg-num} [{pgp-num}] [replicated] [crush-ruleset-n ...