sizeof操作符的例子(一)

  1. 有一个字符串,包含n个字符。写一函数,将此字符串中从第m个字符开始的全部字符复制成另一个字符串(用指针实现,字符串存放在某一字符数组中)。

 

#include <stdio.h>
int change(char *p,int n,char *q){/*传入参数(传入指针,开始位置,结束位置!),并且输出写入数组,输出截断后的字符*/
char b[100];
int i=0;
p=p+n-1;
for(p;p<q;p++){
i++;
b[i]=*p;
printf("%c",*p);
}

}
void yanzheng(int n,int z){/*验证开始位置是否越界*/
if(n<=0||n>z){
printf("开始位置超过原字符元素的总数!\n");
putchar('\n');
printf("------------分割线------------\n");
putchar('\n');
main();
}
}
int main()
{

char a[]="I LOVE YOU BUT YOU DO NOT KNOW";
char *p=a;
int n;
int z=sizeof(a)/sizeof(a[0]);/*求出a数组的元素个数,原理请看我的博客!http://www.cnblogs.com/mxqcsboke/*/
printf("请输入开始位置\n");
scanf("%d",&n);
char *q=p+(sizeof(a)/sizeof(a[0]));/*定义指针*/
yanzheng(n,z);/*调用函数验证开始位置是否越界!*/
change(p,n,q);/*调用的函数*/
return 0;
}

 

转载于:https://www.cnblogs.com/mxqcsboke/p/7749974.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值