定义字符指针,指向堆区空间,计算字符串长度
要求:1、定义函数实现堆区空间申请
2、在主函数实现输入字符串
3、定义函数实现字符串长度 size_t my_strlen(const char*s)
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
char *shen(int n){
char *p=(char *)malloc(sizeof(char)*n);
if(p==NULL)
return NULL;
return p;
}
void input(int n,char *p){
scanf("%s",p);
}
size_t my_strlen(const char *s){
int count=0;
for(int i=0;*(s+i)!='\0';i++)
count++;
return count;
}
char *free_space(int n,char *p){
if(p==NULL)
return NULL;
free(p);
p=NULL;
return p;
}
int main(int argc, const char *argv[])
{
int n;
scanf("%d",&n);
char *p=shen(n);
input(n,p);
size_t s=my_strlen(p);
p=free_space(n,p);
printf("字符串长度%ld\n",s);
return 0;
}