第一题代码答案:
#include<stdio.h>
char *(find_char)(char const *source, char const *chars)
{
if(source==NULL || chars ==NULL)
return NULL;
const char *Src=source;
const char *Des= chars;
const char *tmp=NULL;
for(; *Src!='\0'; Src++, Des++)
if(*Src==*Des)
{
tmp=Src;
return tmp;
}
return tmp;
}
int main()
{
char *source="ABCDEF";
char *chars ="XRCQEF";
printf("\n %c \n", *find_char(source, chars));
return 0;
}
/*
坑点:指针必须初始化, 倘若类似只是定义指针, 没有对其赋值操作, 在内存中视为没有分配内存,
可以通过 以下命令查看反汇编代码
gcc -c *.c -o *.o
objdump -d *.o
*/
第二题代码答案: 未完待续....