苏嵌实训-嵌入式linux C 第 6 天

目录

  • 苏嵌实训-嵌入式linux C 第 6 天
    • 日报表
    • 作业

苏嵌实训-嵌入式linux C 第 6 天

日报表

项目名称 【苏嵌实训-嵌入式linux C 第6天】
今日进度以及任务 1. 复习位运算、宏定义、内置宏定义__func__、__LINE__,
2. 学习华为编码规范
3. 复习指针、数组、数组指针、指针数组,学习野指针
本日任务完成情况 1. 通过练习巩固C语言的位运算在进制转换中的使用
2. 完成作业,练习指针数组和数组指针如何作为函数参数
所有任务都已完成
本日开发中出现的问题汇总
本日未解决问题
本日开发收获 1. 学会用内置宏定义在调试代码中的作用
2. 学习了华为编码规范,提高代码的可读性
3. 理解野指针,并避免野指针的出现
其他 复习单链表

作业

#include 

void print1(char *ptr)
{
    printf("ptr = %s\n", ptr);
}

void print2(char (*ktr)[100])
{
    int i;
    for(i = 0; i < 2; i++)
    {
        printf("ktr[%d] = %s\n", i, *(ktr + i));
    }
}

void print3(char (*str)[2][100])
{
    int i, j;
    for(i = 0; i < 2; i++)
    {
        for(j = 0; j < 2; j++)
        {
            printf("str[%d][%d] = %s\n", i, j, *(*(str + i) + j));
        }
    }
}

void print4(char **ytr)
{
    int i;
    for(i = 0; i < 3; i++)
    {
        printf("ktr[%d] = %s\n", i, *(ytr + i));
    }   
}

int main(int argc, char * argv[])
{
    char ptr[100] = "hello";
    char ktr[2][100] = {"hello1", "hello2"};
    char str[2][2][100] = {{"hello3", "hello4"}, {"hello5", "hello6"}};
    char *ytr[3] = {"hello1", "hello2", "hello3"};

    print1(ptr);
    print2(ktr);
    print3(str);
    print4(ytr);

    return 0;
}

运行结果

ptr = hello
ktr[0] = hello1
ktr[1] = hello2
str[0][0] = hello3
str[0][1] = hello4
str[1][0] = hello5
str[1][1] = hello6
ktr[0] = hello1
ktr[1] = hello2
ktr[2] = hello3

你可能感兴趣的:(苏嵌实训-嵌入式linux C 第 6 天)