项目开发日报表
项目名称 | 【苏嵌实训-嵌入式 linux C 第6天】 |
---|---|
今日进度以及任务 | 1. 复习位运算,预处理宏定义2.学习华为编码规范3.复习指针,数组,数组指针,指针数组4.学习野指针 |
本日任务完成情况(详细说明本日任务是否按计划完成,开发的代码量) | 1. 通过练习巩固C语言的位运算在进制转换中的使用2. 练习指针数组和数组指针如何作为函数参数 按计划完成任务 |
本日开发中出现的问题汇总 | 在学习野指针的时候有点没听明白 |
本日未解决问题 | 无 |
本日开发收获 | 1.复习了位运算 2.学会了进制转换程序编写 3.学会了怎样避免野指针的出现 |
其他 | 无 |
#include <stdio.h>
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;
}
结果:
ptr = hello
ktr[0] = hello1
ktr[1] = hello2
str[0][0] = hello3
str[0][1] = hello4
str[1][0] = hello5
str[1][1] = hello6
ytr[0] = hello1
ytr[1] = hello2
ytr[2] = hello3