当前位置: 首页 > news >正文

深圳建网站好的公司怎么做网页新闻

深圳建网站好的公司,怎么做网页新闻,长网络推广,上海专业seo服务公司数据结构—串 前置说明 由于学习Java面向对象语言走火入魔#xff0c;试图在C语言中模拟实现面向对象设计。里面加入了大量的函数指针配合结构体来模拟类中的成员方法 故此篇#xff0c;亦可称: 面向对象的C语言程序设计 用C语言实现串这种数据结构#xff0c;并将它应用到…数据结构—串 前置说明 由于学习Java面向对象语言走火入魔试图在C语言中模拟实现面向对象设计。里面加入了大量的函数指针配合结构体来模拟类中的成员方法 故此篇亦可称: 面向对象的C语言程序设计 用C语言实现串这种数据结构并将它应用到解决实际问题。 C语言特性的麻烦的不如自动回收的要手动管理内存容易出Bug的。bushi。 编程语言C语言 IDE:VS Code 函数实现灵感出于Java中的String类提供的方法在C语言实现一下。 串介绍 由于版本更替计算机对字符处理越来越多引入了字符串的概念。 串由零或多个字符组成的有限序列又称字符串 一般记为s“a1a2……an”,s为串的名称用双引号引起来部分语言由单引号三引号的写法。 串的长度串的可见字符数目个数就是串的长度就是上面的a1,a2……an。 空串空串的长度为0空串用“表示。 主串与字串最初的串为主串在主串中取一部分连续的字符序列得到一个新串该串称为字符串的子串。比如String其字串可以是S”,“Str”,等。 串的比较两个串的比较是比较相应位置的字符在ASCII码集中每个字符都与整数建立了一一映射。 如比较sillystupid.第一个字符相等那么比较第二个字符i,t。我们只需要记得ASCII码集中小写字母的编码是递增关系而26字母表i在t前面故认为“it”比较结束我们认为silly比stupid小。比较逻辑是这样的。 若两个串长度不一其中一个串比较完了那么认为长串更大。 两个串相等的充分必要条件两个串长度相等且对应字符一一相等。 使用说明 1.若在栈上创建String类型 变量如String s,需要进行String s{.InitStrInit},结构体的局部初始化 如下图 #includeString.h //很可惜不能实现像Java中的this关键字来隐式传递参数。 int main(){//Object-oriented Programming in CString s{.InitStrInit};s.Init(s);s.append(s,hello);s.toString(s);printf(\n);s.append(s,,world!);s.toString(s);return 0; } 2.若在栈上创建一个String* 的指针变量需要调用newString函数String* strnewString();newString会在堆上创建一个这样的String变量并返回其地址。 int main(){//Object-oriented Programming in CString* strnewString();str-append(str,hello, );char* arr1,2,3,4,5;str-valueOfCharArrays(str,arr);str-toString(str);return 0; }3.由于结构体内置freememory函数指针通过指针来调用函数可以回收自身内存调用后相当于销毁了自身。若采用指针请注意将该指针置空。 4.这里麻烦点在于不好好管理内存容易泄露。 结构体说明(串的顺序结构) 以下是动态字符串定义全称Dynamic String,简称string。 注意前面字段定义很显然这是顺序结构的定义。 串的顺序结构是用一组地址连续的存储单元存储串中的字符序列为了摆脱原有字符串的固定性我们选择堆区的内存以便我们实现动态扩容。 我们把\0踢出在外但注意\0还是存在只不过由我们内部函数封装好始终给\0预留空间不对外显示使用不受\0限制。 typedef struct string{//顺序表】//字段/属性/成员char* a;//字符指针int length;//记录当前字符串的长度也是有效长度。int capacity;//只记录实际有效的字符容量不包括\0\0始终额外留一个字节空间。//--------------------------------------------------------------//成员函数用函数指针模拟一下//get函数int (*getLength)(struct string* self);//获取当前字符串的长度相当于C库中string函数。//操作字符串函数void (*toString)(struct string* self);//打印字符串void (*append)(struct string* self,const char* str);//连接字符串bool (*empty)(struct string* self);//判断字符串是否为空串。struct string* (*substring)(struct string* self,int startIndex,int endIndex);//原字符串中创建一个对应区间[startIndex,endIndex)的子字符串。//整型浮点型字符数组单个字符的转化为字符串void (*valueOfInt)(struct string* self,int val);void (*valueOfLong) (struct string* self,long val);void (*valueOfFloat) (struct string* self,float val);void (*valueOfDouble) (struct string* self,double val);void (*valueOfCharArrays)(struct string* self,char val[]);//动态字符串之间的操作void (*copyOf)(struct string* self,struct string* other);//动态字符串之间的拷贝。int (*compareTo)(struct string* self,struct string* other);//比较两个字符串大小bool (*equal)(struct string* self,struct string* other);//比较字符串是否相等。int (*indexOf)(struct string* S,struct string* T,int pos);//BF算法求子串在主串指定pos之后的下标。//管理内存 void (*Init)(struct string* str); //字符串普通变量构造函数void (*reset)(struct string* self);//重置字符串如同一开始初始化一样。效果和newString之后相同。void (*freememory)(struct string* self);//销毁自身释放所有动态内存。使用此方法后记得将原有指针置空处理。 }String;函数说明 gitte 测试不够严谨难免出错。请自行学习并在评论区指正错误谢读。
http://www.zqtcl.cn/news/767682/

相关文章:

  • 网站营销队伍网站建设明薇通网络
  • 做网站的公司重庆万网x5 wordpress
  • 印刷设计营销网站网站设置成黑白
  • 百度自助建站官网上海徐汇网站建设
  • 网站定制 北京贵阳网站建设公司哪家好
  • 如何做logo模板下载网站企业策划
  • 合肥做网站的公司讯登欧亚达网站是哪家公司做的
  • 网站模板带有sql后台下载企业网站建设平台的功能
  • 网站推广的实际案例电子商务网站建设的要求
  • 永平建设有限公司网站2023一般纳税人企业所得税怎么算
  • 创业网站推广怎么做简单的网站首页
  • 外贸网站模板 外贸网站制作如何推广宣传一个品牌
  • 中企动力企业邮箱 手机邮箱河南网站建设优化推广
  • 广州seo网站多少钱王野天津音乐广播电台图片
  • 东莞网站制作十强怎么做一个链接网站
  • 深圳网站设计 建设首选wordpress 获取父页面
  • 大兴企业网站建设公司wordpress谷歌字体优化
  • 哈尔滨建设银行网站网站建设运营服务商
  • 重庆本地建站企业网站建设流程及费用
  • 网站建设需要用到那些语言简述网站建设和推广评价指标
  • 17网站一起做 佛山印刷做网站网上接单
  • 网站建设步骤 优帮云网站建设首选定制开发
  • 专门做家居的网站国内企业网站设计
  • 做网站时怎么取消鼠标悬停性价比最高网站建设
  • 三网合一网站模板网站上内容列表怎么做
  • 鲜花商城网站建设西安房产网站大全
  • 家庭宽带做网站空间一个数据库可以做几个网站
  • 环境设计公司排名搜索引擎seo是什么意思
  • 北京网站建设策划排名长春市建设集团股份有限公司
  • 网站建设项目怎么跟进客户安阳哪里有做网站的