#include<stdio.h> #include<stdlib.h> char *substr(const char *s, int n1, int n2) { char *p = (char *) malloc(n2-n1+2); int i,j=0; for(i=n1;i<=n2;i++,j++) p[j] = s[i]; p[j] = '\0'; return p; } void main(void) { char s[80], *sub; int n1, n2; printf("请输入原字符串:"); scanf("%s",s) ; printf("请输入起止位置:"); scanf("%d%d",&n1,&n2); sub = substr(s,n1,n2); printf("子串为:%s",sub); }
动态内存分配 学习笔记
原创
©著作权归作者所有:来自51CTO博客作者小靳abc的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:指向结构体数组的指针 学习笔记
下一篇:动态内存分配 学习笔记2
![](https://ucenter.51cto.com/images/noavatar_middle.gif)
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
动态内存分配问题
定义和使用动态内存相关的函数
malloc calloc realloc free