C语言基础部分
变量:一般格式
<存储类型
>
数据类型
变量名称;
eg: int i;
等价于: auto int i
存储类型:
auto 自动变量,一般可以省略
static
静态变量,一般是全局变量
extern 外部变量,一般在其他文件中
register 寄存器变量,一般不用
数据类型:
基本数据类型:
char short int long float double
组合数据类型:数组
构造数据类型:结构体
联合体
枚举
自定义结构类型:
typedef
变量名称:
C
语言命名规范:
(1)不能以数字开头
===>int 9i;
(2)必须是数字,字母,下划线组成
==>char %%xx
(3)不能与关键字同名
===>int short
业内的规范:
(1)驼峰命名法:
int PersonCount; ===>int i
char *FireWallRoute; ===>char *fwr
(2)下划线命名法:
int person_cnt;
char* firewall_route;
变量的使用
变量的初始化:在定义变量的同时给变量赋值
int i = 100; ///
普通变量的初始化
auto int i = 100;
static int j = 200;
注意事项
: 定义变量的位置不同,含义不同
1
、如果在函数内部定义,没有存储类型的特别修饰 则认为该变量属于局部栈区 变量。系统不会给变量 赋值,则变量有可能是随机值
2
、如果在函数外部定义,不属于任何一个函数的变量 无论是否有存储类型修 饰,都属于全局静态变量。系统会默认给该变量赋值为0
3
、在函数或者其他逻辑控制范围内,定义的变量 都有其作用域范围,一般是逻 辑控制范围内
4
、如果局部变量与全局变量同名,则局部变量优先
5
、全局变量与
static
变量在单一文件内,基本没有区别 如果在不同文件内,则 有差异,static修饰的变量外部不能访问 没有修饰的全局变量外部可以直接引用
变量的赋值: 在定义变量之后修改变量的值。
格式:变量名称 =
变量值;
eg:int i; i = 100;
注意:(1)变量要先定义后使用。
(2) =
左边一般是 基本数据类型 ,右边一般是 常量/
变量
/
表达式
(3)变量的值以最后一个距离最近的值为准
在赋值过程中的问题:
1
、浮点数赋值精度丢失问题。 浮点数给整数赋值会丢失进度只将整数部分赋值给 变量
2
、不同类型的数据转换方式。
===
》数据的类型转换
强制类型转换
==
》格式
(目标类型)
<
表达式
>
eg: int a = (int) b
int a = (int)(a+b+c)
隐式类型转换
==
》没有格式
遵循类型自动从小向大做的转换规则
char ==>short==>int ==>long ===>float ==>double
C语言的注释方式
单行注释:
//
开头的行会称为注释语句
代码块注释:
/*
被注释的语句
*/
C语言的关系运算符
== 相等关系,在逻辑判断的时候使用,尤其注意其 与赋值运算符的相似问题
!=
不等关系
,
判断运算符号左右两边的关系是不相等的 一般用于逻辑判断中的两个表达式
>
大于关系
==
》
>=
<
小于关系
==
》
<=
虚拟机一些简单操作
1.客户端
安装:
rpm -ivh ftp-0.17-54.el6.i686.rpm
验证:
ftp -help
测试登录:
ftp 192.168.1.199
登录账户:
ftp
密码:空
目录:
pub
下载目录
upload
上传目录
>get xxx //
下载
xxx
注意:get的文件就在当时登录ftp的工作目录
>put xxx //
上传
xxx
注意:put后跟的文件必须在当时目录中存在该文件
>ls //
查看当前
ftp
目录的内容
>by ///
退出
ftp
登录
2
、服务器端
安装:
rpm -ivh vsftpd-2.2.2-11.el6_4.1.i686.rpm
备份: mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/123_bak.conf
修改配置文件: vim /etc/vsftpd/vsftpd.conf
重启服务: service vsftpd restart
如果重启失败尝试如下解决方案:
setenforce 0 重启机器
如果不能上传文件: 1、关闭防火墙
service iptables stop
2
、修改权限
chmod 755 /var/ftp/