Unix下标准C编程第一章

Linux下标准C编程第一章

一.简单介绍

在Ubuntu中vim的配置文件存放在/etc/vim目录中,配置文件名为vimrc

在Fedora中vim的配置文件存放在/etc目录中,配置文件名为vimrc

在Red Hat Linux 中vim的配置文件存放在/etc目录中,配置文件名为vimrc

1.set nocompatible去掉有关vi一致性模式,避免以前版本的bug和局限

2.set nu!显示行号

3.set guifont=Luxi/ Mono/ 9 设置字体,字体名称和字号

4.filetype on检测文件的类型

5.set history=1000:记录历史的行数

6.set background=dark:背景使用黑色

7.syntax on:语法高亮度显示

8.set autoindent:vim使用自动对齐,也就是把当前行的对齐格式应用到下一行(自动缩进)

9.set cindent(cindent是特别针对 C语言语法自动缩进)

10.set smartindent依据上面的对齐格式,智能的选择对齐方式,对于   类似C语言编写上有用  

11.set tabstop=4设置tab键为4个空格,

12.set shiftwidth =4设置当行之间交错时使用4个空格    

13.set ai设置自动缩进

14.set showmatch设置匹配模式,类似当输入一个左括号时会匹配相应的右括号

15.set guioptions-=T去除vim的GUI版本中得toolbar

16.set vb t_vb=当vim进行编辑时,如果命令错误,会发出警报,该设置去掉警报      

17.set ruler在编辑过程中,在右下角显示光标位置的状态行

18.set nohls默认情况下,寻找匹配是高亮度显示,该设置关闭高亮显示

19.set incsearch在程序中查询一单词,自动匹配单词的位置;如查询desk单词,当输到/d时,会自动找到第一个d开头的单词,当输入到/de时,会自动找到第一个以ds开头的单词,以此类推,进行查找;当找到要匹配的单词时,别忘记回车

20.set backspace=2设置退格键可用

21.修改一个文件后,自动进行备份,备份的文件名为原文件名加“~”后缀

      if has("vms")

      set nobackup

      else

      set backup

      endif

如果设置完成后,发现功能没有起作用,检查一下系统下是否安装了vim-enhanced包,查询命令为:

        $rpm -q vim-enhanced

注意:如果设置好以上设置后,VIM没有作出相应的动作,那么请你把你的VIM升级到最新版,一般只要在终端输入以下命令即可:sudo apt-get install vim

 

二.标准C编程:

vi xxx.c:编写c程序(xxx.c为c语言源程序)

   按照标准c语言编写,不是可执行的,可移植

gcc xxx.c:编译c程序,生成机器指令(a.out)存放在当前目录下(编译compile,连接link)

gcc -c xxx.c:只编译,不连接,产生xxx.o(目标文件)

gcc xxx.o:连接目标文件

gcc xxx.o -oxxx

a.out或./a.out:执行生成的机器指令(可执行文件,不可移植)

 

#编译预处理语句,将后面包含的头文件插入到include,标准c语言的头文件放在/usr/

插入标准C语言头文件用“<>”;插入不是自带的文件要用“”;

source ~/.bashrc或者. ~/.bashrc初始化bashrc;

return 0;内核要求程序返回一个值,表示返回0值,一切正常;如果返回1,则表示程序运行                   过程中出了一点问题。

单个字符(char)用‘’表示;字符串则用""表示。

 

数据类型:

float(精确到7位有效数字);double(精确到15位有效数字);long double(有些编译          器不支持),

 

float的存储方式:一个符号位(1bite)+阶码(8byte)+尾数(23byte),一 共四个字节;

double的存储方式:一个符号位(1bite)+阶码(11byte)+尾数(52byte),一共八个字节;

 

short int(2byte);int(4byte);long int(4byte);long long int(8byte);

unsigned:没有符号位

char(0~127):ASCII码(7bite)表示范围,实际保存的是数字,而不是图案;

                ‘a’-‘z’:97-122

                ‘A’-‘Z’:65-90

‘0’-‘9’:48-57(数字的字符要注意)

所以字符数字要与实际意义数值相比,在用字符进行转换是,只需减去‘0’(48);

二进制数:

 

扩展ASCII码;

 

8位(1byte)二进制数原码,取权重位为符号位,0表示非负数,1表示负数;

补码:正数的补码是自己本身;负数的补码是相对应正数先取反加一;

对负数的补码而言,对它再取反加一就是它所对应的正数。10000000表示-128;

printf:

  %i、%d:int , %hd:short int , %ld:long int;

  %u:unsigned int;

  %f:float , %lf:double;

  %c:char

  %s:"string";

  %p:address;

  %x:十六进制 , %o:八进制;

  %g:float/double去掉了尾随的0;

 

转载于:https://www.cnblogs.com/wsj-a-boy/archive/2013/05/12/3074522.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值