6.C_Demo 数组练习:删除字符串的空格

题目:

现在有一个字符串,编写一个函数能够删除字符串中的空格字符。

思路:

删除字符串的空格,需要一个指针point来遍历字符串,一个指针LinkPoint来指向需要添加值的地方。当第一次找到空格时,将该位置point赋值给LinkPoint。然后每找到一次非空格的值就赋给LinkPoint位置,之后LinkPoint向后移动一位,指向下一次非空格值的赋值位置。

注意点:

  • 对于字符串,需要注意' \0 ',' \0 '是非空格值,但它是结束符,所以要特殊处理。
  • 对于字符串,操作之后要在最后手动加上' \0 '结束符

代码实现如下:

#include <stdio.h>
#include <string.h>

void StrDelBlank(char* str){
	
	char* point = str;//数据遍历位置 
	char* LinkPoint = str;//链接位置 
	char FirstKongGeFlag = 0;//第一次找到空格 
	char DebugI = 0; 
	
	//1.判断是否传入参数有误 
	if(point == NULL){
		printf("err:str is NULL \n");
		return; 
	}else{
		printf("Head Address = %#x\n",point);	
	} 
	
	//2.遍历	
	while(*point!='\0'){
		
		printf("Debug:%d\n",DebugI++);
		printf("Debug:point = %#x\n",point);
		printf("Debug:LinkPoint = %#x\n",LinkPoint);
		printf("Debug:Now char is %c\n",*point);
		//第一次发现空格 
		
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值