计算机之路————C语言基础快速复习2

函数
    函数的原型声明//可以不带参数名称但是要有参数类型 void swap(void);
    函数定义
        函数的返回类型
        void sum(int begin,int end){...;  return ...;}
    函数调用
        传值:传值给函数!!!
    每个函数有自己的变量空间,参数也位于这个独立的空间中,和其他函数没有关系
    本地变量:
        定义在函数内部的变量就是本地变量,参数也是本地变量。
        本地变量就是定义在块内的,可以是函数,语句的块内,甚至是随便拉一对大括号。
        离开这个块,其中的变量消失!!!
        变量的生存期,作用域

字符类型:
    char是一种整数,也是一种特殊的类型:字符
    字符在计算机内部都有一个值去表达它,这个值是可以以整数形式得到的。
    字符计算
    逃逸字符(转义字符)
        
数组
    编译器和运行环境都不会检查数组是否越界,越界访问可能造成程序崩溃!
    定义数组:
        int grades[100];//指定大小时候必须为整数!
    数组是一个容器;一旦创建不能改变大小。所有元素相同的数据类型。
    数组初始化
    数组遍历
        数组变量本身不能被赋值。要想把一个数组元素交给另一个数组,可以用遍历。
    数组作为函数参数时往往必须用另一个参数来传入数组大小!int sum(int n,int a[]){...}
    
    二维数组:
        int a[3][5];//a是一个3行5列的矩阵
        a[i][j] 不等于 a[i,j] (逗号是一个运算符,i,j是一个表达式)
        二维数组初始化
        二维数组遍历(两层for循环)
    
字符数组:char word[]={'a','b'};
字符串:char word[]={'a','b','\0'};//字符串也就是以0或者\0结尾的一串字符。0标志字符串结束,并不是字符串的一部分。
    字符串以数组的形式存在,以数组或者指针的形式访问。string.h里面有很多处理字符串的函数。
    
    字符串变量:
        cahr* str="helllo";
    C语言的字符串以字符数组的形态存在,不能用运算符对字符串做运算。可以通过数组的方式遍历字符串。
    字符串输入输出:
        char str[8];
        scanf("%s",str);
        scanf("%7s",str);//只接受7个字符,多出的内容会交给下一个scanf
    字符串函数:
        strlen
        strcmp
        strcpy 拷贝
        strcat 连接
        strchr 找字符第一次出现位置
        strstr
    
    
地址:
    sizeof(...)占了多少字节,sizeof(int)=4,sizeof(double)=8
    &运算符用来获得变量的地址。printf("%p",&i);//不要写成%d
    先写的变量地址更高,后写的变量地址更低。(从上到下放,从高到低)
    
    数组地址:
        int a[5];
        数组名本身a是一个地址。printf("%p",a)
        a[0],a[1],...是元素,取地址加&  
        &a与a与&(a[0])的结果是一样的。 &a==a
    
    指针变量:
        int *p,*q;//p,q都是指针变量        int *p,q;//q是int变量!
        指针变量的值是具有实际值的变量的地址。
        作为参数的指针:void f(int*p);调用:f(&i);
        scanf("%d",&i);如果少了&,会把i当成地址,结果出错
        
        *运算符:用来访问指针的值所表示的地址上的变量
        
        函数参数表中的数组实际上是指针!但是可以用数组的运算符进行运算。sizeof(a)==sizeof(int*)
        数组变量是特殊的地址。*运算符可以对指针做,也可以对数组做。
        等价的定义:
            int sum(int*arr,int n);
            int sum(int arr[],int n);
        数组变量是const的指针,不能赋值!int a[],即 int* const a
    
    

    
    
    
   
   

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值