学习日志 姓名:张蓉婷 日期:2018.7.11
今日学习任务:今日学习了指针,指针和变量,指针和数组,指针和字符串。
今日任务完成情况:本日任务按老师计划完成。1.指针的基本用法 2.&是取地址符,*是取值 3.不管是什么类型的指针,长度都是4个字节 4.*有两层含义,定义的时候表示变量是一个指针,使用的时候表示取值 5.指针的运算 6用指针运算实现库函数strcpy
7.在字符数组中指定位置插入一个字符的指针用法 8.局部变量,野指针 9.malloc:申请合法的内存 10.字符逆序输出 11.指针数组和数组指针
今日开发中出现的问题汇总:指针变量未赋值是,可以是任意值,是不能使用的,会造成意外错误,而指针变量给NULL值后,则是可以使用的,只是不指向具体的变量。
指针变量的使用步骤:1.定义指针变量 2.给指针变量赋地址 3.正常使用指针进行运算
今日未解决问题:无
今日开发收获:指针是c语言中比较有难度的地方,通过今天的学习,理解了很多。
自我评价:学习仍不透彻还需更多的学习
编写一个c函数,将“I am from shanghai"倒置为”shanghai from am I",即将句子中的单词位置倒置,而不改变单词内部结构。
#include<stdio.h>
#include<string.h>
#include<string.h>
int main()
{
char *str[] = { "I", "am","from","shanghai" ,NULL};
int i = 0;
int j = 0;
int len = 0;
char *temp;
while (str[i] != NULL)
{
i++;
len++;
}
for(i = 0, j = len - 1; j > i; i++,j--)
{
temp =*(str+i);
*(str+i) = *(str+j);
*(str+j) = temp;
}
for(i = 0; i < len; i++)
{
printf("%s ", *(str+i));
}
printf("\n");
{
char *str[] = { "I", "am","from","shanghai" ,NULL};
int i = 0;
int j = 0;
int len = 0;
char *temp;
while (str[i] != NULL)
{
i++;
len++;
}
for(i = 0, j = len - 1; j > i; i++,j--)
{
temp =*(str+i);
*(str+i) = *(str+j);
*(str+j) = temp;
}
for(i = 0; i < len; i++)
{
printf("%s ", *(str+i));
}
printf("\n");
return 0;
}