题目一
定义字符指针,指向堆区空间,计算字符串长度
要求:
1.定义函数实现堆区空间申请
2.在主函数中实现输入字符串
3.定义函数实现字符串长度size_t my_strlen(const char *s)
4.定义函数释放堆区空间
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
char *create(int n)
{
char *s=(char *)malloc(sizeof(char)*n);
if(s==NULL)
return NULL;
return s;
}
size_t my_strlen(const char *s)
{
int i;
for(i=0;*(s+i)!='\0';i++);
return i;
}
char *free_space(char *s)
{
if(s==NULL)
return NULL;
free(s);
s=NULL;
return s;
}
int main(int argc, const char *argv[])
{
int n;
printf("n=");
scanf("%d",&n);
char *s=create(n);
scanf("%s",s);
size_t len=my_strlen(s);
if(len<n)
printf("%ld\n",len);
else
printf("输入的字符串超出范围\n");
s=free_space(s);
return 0;
}
思维导图