Day2

EI
EI
2021-03-11 / 0 评论 / 14 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2021年03月11日,已超过568天没有更新,若内容或图片失效,请留言反馈。

【1】简单编程步骤

1)新建一个.c文件  touch hello.c
2)用vi编辑器打开文件 vi hello.c
3)编写程序:
#include<stdio.h>              //头文件
int main()                     //主函数
{
    printf("HelloKitty!\n");   //语句块
    return 0;                  //返回值
}
4)保存并退出  :wq
5)编译       gcc hello.c
6)执行       ./a.out    
     

【2】gcc编译过程

1)预处理
   展开头文件,删除注释,替换宏定义。
   gcc -E hello.c -o hello.i
2)编译
   检查语法错误,有错报错,没有错误则生成汇编文件。
   gcc -S hello.i -o hello.s       
3)汇编
   将汇编语言生成机器能够识别的二进制文件即目标文件。
   gcc -c hello.s -o hello.o   
4)链接
   链接库文件,生成指定的可执行文件。
   gcc hello.o -o hello

生成指定的可执行文件名:
gcc hello.c -o abc

【3】计算机数据表示

1.数值型数据
  二进制(BIN)  0 1 10 11 100 101 110 111
  八进制(OCT)  0 - 7 10 - 17 20 - 27  77 100
  十进制(DEC)  0 - 9 10 - 19 20 - 29  99 100
  十六进制(HEX)0 - 9 a - f 10-1f     20-2f ff 100  
   
  十进制转二进制:
      短除法:除2倒取余数
         66 => 1000010  
  二进制转十进制:
      二的次幂和
  八进制转二进制:
      421码
      77 => 111 111
      45 => 100 101          
  二进制转八进制:      
     001 101 010 => 152
  十六进制转二进制:
     8421码
     0xab => 1010 1011
  二进制转十六进制:
     0110 1010 => 0x6a
     
2.非数值型数据
  字符 :如何存储在计算机中?
  ASCII码:美国信息交换标准代码 ISO
  man手册查询:man ascii
  

【4】变量

概念:在程序运行过程中其值发生变化的量
数据类型:在内存中占用字节数
存储类型:存储位置 auto、static、register、extern
分类:                     (32位操作系统)
    字符型         char          1字节
    短整型         short         2字节
    整型          int           4字节
    长整型        long          4字节
    单精度浮点型  float         4字节
    双精度浮点型  double        8字节
        
    1字节 = 8位(二进制)
 
 定义格式:
   [存储类型]  [数据类型]  [变量名]
    (auto)       int         a;         
 
    

【5】常量

概念:在程序运行过程中不发生变化的量
分类:
    整型常量:
       整数  1 2 3 4 100 
    字符型常量:
       字符  ‘A’  ‘!’  '\x33' 转义字符  ‘3’
            ‘\n’换行   ‘\r’回车

    浮点型常量:
       小数 3.1415926
    字符串常量:
       “hello”   "a"
      指数常量:
       3*10^5   ->  3e5
       2*10^-3  ->  2e-3
    标识常量:
       宏定义 #define 
       #define 宏名  常量或表达式
       #define PI    3.1415926
       

【6】格式化输出函数

 #include<stdio.h>
 int printf(const char *format, ...);
 功能:按照指定格式进行输出
 参数:
       format 格式
       %d   -- 整数(十进制)
       %ld  -- long
       %o   -- 八进制   %#o 07  014
       %x   -- 十六进制 %#x 0x12
       %c   -- 字符 
       %s   -- 字符串
       %f   -- 小数 float
       %lf  -- 小数 double
       %u   -- 无符号数
       %e   -- 指数
       %p   -- 地址   &取地址符 &a a的地址
 
 返回值:成功输出的字符的个数
       

【7】格式化输入函数

 #include <stdio.h>
 int scanf(const char *format, ...);
 功能:按照指定格式进行输入
 参数:
      同printf
      int a;
      scanf("%d",&a);
      
 返回值:成功输入的数据个数       
    
    
 输入一个大写字母,输出一个小写字母。
 例如:
     输入 A
     输出 a         
    
1

评论 (0)

取消