现在的位置: 首页 > 综合 > 正文

C语言基础一

2018年05月26日 ⁄ 综合 ⁄ 共 1524字 ⁄ 字号 评论关闭

一个C程序经过的步骤:

1.编写

2.编译

        把  .c  文件编译成  .obj  文件, .h
 
头文件不需要编译,它仅仅是copy用

        若main函数中需要调用test()方法,若void test()在main之前,则不用引用;若在其后,则需要事先在main之前声明:void test(); 一般可以把所有的声明放在一个.h开头的头文件中,并在main函数中通过 #include
"test.h"方式引用,不include   .c文件,这样防止重复定义出现链接错误。

      编译不检查文件之间的关系,只检查语法,编译通过不代表文件之间逻辑关系就是对的。

3.链接

把main.obj 和所有关联的obj和c语言函数库 链接成  .exe 文件,由于c语言是面向过程的,不同于java面向对象可以重复类名,c语言不可以重复函数名。c语言是以函数为核心,是把整个项目所有obj文件链在一起,检查函数名有没有重复。

由于c语言不允许重复定义的,所以在此注意,不可以引用.c开头的包含函数的文件,以免产生链接错误

4.运行

 函数:

prinrf:

用法:printf("my age is %d",26);//%-5.2f
代表保留2位小数,整体占5位,- 代表多出的位数占右边

//一个中文占至少2个字符,所以不能用%c,要用%s

printf("my age is %-4d
,height is %
-5.2f ,name is %s ,sex is %c or %s", 26 , 1.55f , "Mr.Legend" ,'A','男');

scanf:  阻塞式函数(不输入不通过)

用法: int a,b; 

scanf("%d",&a);   //&代表变量a的地址,通过回车确定输入完毕。xcode的控制台只能输入但空格数据,所以可以通过先写再粘贴方式。

 scanf("%d %d",&a,&b);//输入之间要求通过空格,回车或者tab来实现输入下一个数。

基本数据类型和类型修饰符:

MJ说的很详细,请参考   基本数据类型

全局变量会自动初始化,局部变量不会自动初始化。             

局部变量声明的时候需要先赋值才安全,否则系统自动赋值会不安全。

char的取值范围是-128~+127 或者 ASCII码字符

char a= 65; char b='A' printf("%c,%d",a,b);   //结果是A,65

类型修饰符:short   long  signed  unsigned  

short a=1;   等价    short int a=1;//c中没有short类型,这只是修饰int,使其范围变小

unsigned b=2;//修饰int型是无符号,即大于等于0的数

short 和int 至少2字节;

long至少4字节;

short不能大于int,int 不能大于long;

char一定为1字节。

基本运算:c语言中一共有34种运算

java中(5>4)返回true:boolean
a=5>4;

c语言中返回1:int a=5>4;

c语言中if(9)条件成立if(-1)调节也成立:非0都为真,0为假

陷阱1:c语言中条件判断最好if(3==a),防止由于少写=等号出现错误

陷阱2:赋值语句误写成a==3;也是对的,所以要手动检查。

逗号表达式   
,  
运算顺序从左到右 

int a=2;int b=0;int c;
c = (++b,a*=2,b=a*5);//c=30
       sizeof:   size_t size=sizeof('A');//4
   char d='A';
   size_t size=sizeof(d);//1
   size_t size=sizeof d;//1
   size_t size=sizeof(int);//4   此处不可以写成 sizeof int

原文链接:http://blog.csdn.net/kldxcr

抱歉!评论已关闭.