• 66 回顾总结


    定义 说明
    int l_v1 定义整型变量
    int *lp 定义一个指针
    int l_arr[10] 定义一个数组
    int *lp[10] 定义一个指针数组
    int f_test() 定义一个函数,返回值int
    int * f_test() 定义一个函数,返回值是int 指针
    int **lp 定义一个二级指针



    上述表,除了倒数第二个,没有讲过,其他都讲过了.大家应该做到一目了然,熟悉掌握其在内存中的本质是什么.
    常量指针和指针常量

    const(代表常量)    *(指针)
    int const  *l_v1; //常量指针,指针的地址可以修改,内容不能重复赋值.
    int * const l_v1;//指向的内存地址不可以修改,但是内容可以改变. 必须初始化.

    const char  *  l_arr = char const * l_arr


    #include<stdio.h>
    #include<stdlib.h>
    #include<string.h>

    int f_strlen(const char * p_1) {
     int l_lenth = 0;
     while (p_1[l_lenth] != '') {
      l_lenth++;
     }
     return l_lenth;
    }

    int f_strcpy(char * p_dest, char const * p_src) {
     int l_length = 0;
     while (p_src[l_length] != '') {
      p_dest[l_length] = p_src[l_length];
      l_length++;
     }
     return l_length;
    }

    void main() {
     char l_v1[10] = "123456789";
     char l_v2[10] = { 0 };
     f_strcpy(l_v2, l_v1);
     system("pause");
    }


    #include<stdio.h>
    #include<stdlib.h>
    #include<string.h>

    void f_printfint(int * p_1, int l_length) {
     for (size_t i = 0; i < l_length; i++) {
      printf("%d ", p_1[i]);
     }
    }

    void main() {
     int l_array[] = { 123,456 };
     f_printfint(l_array, sizeof(l_array) / sizeof(int));
     system("pause");
    }

    //在写一个关于参数是int类型数组的函数时,最好再提供一个参数,表示这个数组的内存长度,方便读写遍历控制.
    //如果函数的参数是字符串,就不需要这个字符串就多长这个参数,比如strcpy

  • 相关阅读:
    树与树的表示
    队列的顺序/链式存储实现
    堆栈的链式存储实现
    堆栈的顺序存储实现
    线性表的链式存储求表长,查找,插入,删除
    C语言博客作业--函数
    C语言博客作业--嵌套循环
    C语言第三次博客作业---单层循环结构
    C语言第二次博客作业---分支结构
    C语言第一次博客作业——输入输出格式
  • 原文地址:https://www.cnblogs.com/xiaodaxiaonao/p/7995013.html
Copyright © 2020-2023  润新知