小标
2018-12-03
来源 :
阅读 1395
评论 0
摘要:本文主要向大家介绍了C/C++知识点之c语言字符数组和指针的经典用法,通过具体的内容向大家展示,希望对大家学习C/C++知识点有所帮助。
本文主要向大家介绍了C/C++知识点之c语言字符数组和指针的经典用法,通过具体的内容向大家展示,希望对大家学习C/C++知识点有所帮助。
1.字符数组 许多情况下,对字符串的处理使用字符数组会更加方便,比如:
我觉得不改变字符串的原有顺序,对字符串进行删除等操作时,使用字符数组效果会更好。
eg:给定字符串(ASCII码0-255)数组,请在不开辟额外空间的情况下删除开始和结尾处的空格,并将中间的多个连续的空格合并成一个。例如:" i am a little boy. ",变成"i am a little boy",语言不限,但不要用伪代码作答.
answer:
#include
using namespace std;string FormatString(char str[], int len){ //if (str == NULL || len <= 0) //return;
int i = 0, j = 0; while (str[i] == ‘ ‘)//开头的空格,通过移动索引达到删除空格的目的 i++; while (str[i] != ‘\0‘) { if (str[i] == ‘ ‘ && (str[i + 1] == ‘ ‘ || str[i + 1] == ‘\0‘))//中间或者结尾的空格,判断是否有两个空格或者结尾了。用i和i+1体现了数组索引的用途 { i++; continue; } str[j++] = str[i++]; //程序核心,通过索引完成删除空格的操作,j是小于等于i的。 } str[j] = ‘\0‘; return str;}
void main(){ char ch[] = "i e."; cout << FormatString(ch,5); system("pause");}
2.指针操作
在对字符串的移动进行操作时,使用指针往往会更加方便。
eg:
字符串中的所有数字字符移到所有非数字字符之后,并保持数字字符串和非数字字符串原有的先后次序。例如,def35adh3kjsdf7,输出为defadhkjsdf3537。answer:
#include
本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标编程语言C/C+频道!
喜欢 | 0
不喜欢 | 0
您输入的评论内容中包含违禁敏感词
我知道了

请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号