苏嵌实训-嵌入式linuxC第 6 天

项目名称 苏嵌实训-嵌入式linuxC第 6 天
今日进度以及任务 今日进度主要学习指针、数组、函数
本日任务完成情况 通过老师的代码举例更深入的了解到了指针、地址分布、包括数组、函数
本日开发中出现的问题汇总
本日未解决的问题
本日开发收获 学会了指针、数组、函数重要知识点,主要内容包含在笔记中
其他

指针
1、指针是什么?指针是一个变量(指针变量),保存的是地址,作用:能够直接操作地址(直接访问硬件)
2、指针类型是根据存储的地址的类型(类型+不长)
3、* 取值运算符 & 取地址运算符
4、多维指针的作用:保存前一维指针变量的地址
5、指针赋值(一定是相同指针类型值)
6、万能指针:void*:可以接受任何类型的指针的值!(不能做取值和运算)
7、野指针

数组

作业:

#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;
        int 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("ytr[%d] = %s\n", i,  *(ytr+i));
        }
}

int main()
{
        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;
}

你可能感兴趣的:(c语言,指针,c++)