[C++] Pen questions & linux cmd
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
习题
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的更多相关文章
- Linux Cmd Tool 系列之—script & scriptreplay
Intro Sometime we want to record cmd and outputs in the interactive shell sessions. However history ...
- linux/cmd中python路径导入ModuleNotFoundError: No module named 'xxx'
在linux或者直接在cmd中运行python文件时 会遇到导包错误的情况ModuleNotFoundError: No module named 'xxx’由于不在pycharm中 所以这里不能将上 ...
- Linux Cmd Tool 系列之—alias
The alias cmd list your current aliases. For example : alias Use alias to shorten a long cmd in curr ...
- 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 ...
- [Linux]cmd to use
0x01 Linux Perfermance Analysis in 60s 1> uptime ---load averages 2> dmesg -r | tail ---kernel ...
- linux cmd: ps
每天一个linux命令(41):ps命令 http://www.cnblogs.com/peida/archive/2012/12/19/2824418.html Linux中的ps命令是Proces ...
- linux cmd: netstat
每天一个linux命令:netstat http://www.cnblogs.com/peida/archive/2013/03/08/2949194.html netstat命令用于显示与IP.T ...
- linux cmd: linux下解压命令大全
linux下解压命令大全 .tar 解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)———————————— ...
- linux cmd
Linux查找包含特定字符串的文件名的方法 Pasted from <http://www.jbxue.com/LINUXjishu/9790.html> find .|xargs gre ...
随机推荐
- 基于Oracle的EntityFramework的WEBAPI2的实现(二)——使用DbFirst
之所以使用DbFirst而没有使用CodeFirst是因为考虑到现实的情况中,我们之所以会选择oracle而不是SQL SERVER,一方面是因为之前公司已经在使用Oracle,而且有好多我们需要用到 ...
- Magento(麦进斗)安装问题
安装到数据库那一步会跳出 lib\Zend\Db\Statement\Pdo.php on line 228 错误 解决方案: 在你的php模块里的php.ini文件添加(或者修改)max_execu ...
- 使用GDI+保存带Alpha通道的图像
带Alpha通道的图像(ARBG)在通过GDIPlus::Bitmap::FromHBITMAP等转为GDI+位图,再存储时,透明区域会变成纯黑(也有可能是纯白?). 网上找了两段保持透明的实现代 ...
- 《Java核心技术》 -- 读书笔记 ① - 预热
引言 之前通过网上的实例自己使用了Java的一些技术及轮子快速的的“烂“造了一些小应用,但是毕竟没有认真地了解和认知Java,遂打算花一个月左右的时间来细细品味一下... 从头开始,慢慢深入!! Ja ...
- MySql——编程
基本语法形式 语句块模式: 在mysql编程中,begin....end;基本代替了原来编程语句中的{...}语法. 但又有所区别: 一个bigin...end;块,可以给定一个“标识符”,并且可以使 ...
- 第一个 Windows 界面程序
编译器 使用的编译器为 Visual Studio 2017 菜单栏 -> 文件 -> 新建 -> 项目 选择 Windows 桌面应用程序,然后填好相关信息后点击“确定” 在解决方 ...
- Julia - 短路求值
&& 和 || 的布尔运算符被称为短路求值 它们连接一系列布尔表达式,仅计算最少的表达式来确定整个链的布尔值 在表达式 a && b 中,只有 a 为 true 时才计 ...
- Django学习---缓存
缓存 由于Django是动态网站,所有每次请求均会去数据进行相应的操作,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用:缓存. 缓存将一个某个views的返回值保存至内存或者memcach ...
- 关于where和having的直观理解
一,查询区别 where是对前面select的字段没有要求,直接查询库表的 having是对前面的select的字段有要求,字段已经select出来的 可以用having进行处理 select id, ...
- C#做的在线升级小程序
转自原文C#做的在线升级小程序 日前收到一个小任务,要做一个通用的在线升级程序.更新的内容包括一些dll或exe或.配置文件.升级的大致流程是这样的,从服务器获取一个更新的配置文件,经过核对后如有新的 ...