c语音入门day01~day02

查看

-rw-rw-r-- 1 hq hq 0 7月 1 10:52 file1.c

文件类型 权限 链接数 用户名 组名 大小 修改时间 文件名

字符类型

b:块设备文件 /dev

c:字符设备文件

d:目录文件 文件夹

-:普通文件 .c .h .txt

l:链接文件 <LinuxC高级>

s:套接字文件 <网络编程>

p:管道文件 <IO>

rw-rw-r-- 文件权限 三个一组 共9个

rwx:可读可写可执行 rw-:可读可写不可执行

权限值:r:4 w:2 x:1 -:0

超级用户

在终端输入 sudo passwd root  设置超级用户和密码,下次使用su命令即可进入超级用户

复制与移动

cp和mv区别:

cp之后源文件还在;mv之后源文件不在

在复制文件夹时,代码需为 cp -r  文件夹名字  要复制到的地址

vi 编辑器
命令行模式:复制、粘贴、删除、光标移动等

插入模式:编辑代码

底行模式:保存、退出、复制、分屏、查找、替换等

若vi test2.c时,test2.c不存在,则在保存后会自动在当前路径生成test2.c文件。

gcc 编辑器

简写

gcc  test.c

生成a.out文件 

gcc test.c  -o test

运行 ./test

完美编译分为4步

预处理

gcc -E test.c -o test.i

编译

gcc -S test.i -o test.s

汇编

gcc -c test.s -o test.o

链接

gcc test.c -o test

运行 ./test

非数值型数据

\转义字符 'n'字符n '\n'换行

'0' 48

'A' 65

'a' 97

关键字

存储类型:auto, static, extern, register

数据类型:int, char, float, short, long, double, signed, unsigned

构造数据类型:struct, enum, union

分支:if, else, switch, case, default, for,do, while, go, to, break, continue

其他:void ,const ,sizeof ,volatile ,return, typedef

标识符

1.由字母、数字、下划线(_)组成

2.开头不能是数字

3.不能和关键字重名

4.见名知意(驼峰结构)

算术运算符
/ %

(%只能用于整型运算)

int a=5/2;

printf("%d\n",a); //2

========================

float a=5/2;

printf("%f\n",a);//2.000000 默认打印小数点后六位

float b=2;

printf("%f\n",b);//2.000000

==========================

float a=5.0/2;

printf("%f\n",a); //2.500000

==========================

强制转换

float a=(float)5/2; //强制转换只在当前这一行生效

printf("%.1f\n",a); //2.500000 %.1f保留一位小数

float b=5/2;

printf("%f\n",b); //2.000000

++

独立成句

int a=6;

1)++a;

printf("%d\n",a); //7

  1. a++;

printf("%d\n",a); //7

赋值运算

int a=6;

1)int b=++a; //+ =

printf("%d %d\n",a,b);//7 7

2)int b=a++; //= +

printf("%d %d\n",a,b);//7 6

打印语句

int a=6;

1)printf("%d\n",++a);//7

printf("%d\n",a);//7

2)printf("%d\n",a++);//6

printf("%d\n",a);//7

习题

解析代码:分析每一步变量的取值

#include <stdio.h>

int main(int argc, char *argv[])

{

int a = 10;     

int b = a--;            //a=9  b=10

int c = a + b + 2;       //a=9   b=10   c=21

int d = (b--) + (++c);   // b=9  c=21  d=10+22=32

printf("%d\n",d);

} [单选题] *

A. d = 31

B. d = 32

C. d = 33

D. d = 34

答案为 b

答案为k=9

答案为d

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值