C语言奇淫技巧,字符串的三种表示方法,不会用不是合格的程序员
1.在C语言中,是将字符串作为字符数组来处理的,字符串是逐个存放到数组元素中的
例如用一个一维的字符数组存放字符串"I am a boy.",如下代码:
char c[12] = {'I','a','m','a','b','o','y','.'};
这个字符串的实际长度是11,数组长度是12,实际工作中,人们关心的往往是字符串的有效长度而不是字符串的数组长度,例如要打印字符串,这是就要知道字符串的实际长度。平时常使用下面三种方式来测定字符串的实际长度:
(1)在串值后面加一个不计入长度的结束标记字符,比如''来表示串值的终结
初始化一个字符串的方法如下,在最后添加''
char str[] = {'I','a','m','h','a','p','p','y',''};
也可以直接使用字符串常量初始化字符数组(系统自动加上''),这种方法符合人们的习惯。
char str[] = "I am happy";
或者
char str[] = {"I am happy"};
注意:不能使用下面的赋值方式:
char str[20];
str = "I am happy";
但可以用字符指针指向这个字符串:
char *str;
str = "I love China";
(2)将实际串长度值保存在数组0的下标下
#define MAXSIZE 20 //数组的长度
typdef char String[MAXSIZE+1];
初始化字符串的方法:
String t;
StrAssign(t,"I am happy");
int StrAssign(String T,char *chars)
{
T[0] = strlen(chars); //下标为0存放数组长度
for(i=1;i<=strlen(chars);i++) //下标位置从1开始存放数据
{
T[i] = *(chars+i-1);
}
return 1;
}
(3)使用结构体类型(自定义类型)
#define MAXSIZE 20
typedef struct{
char ch[MAXSIZE];
int len;
}String;
其中:MAXSIZE表示串的最大长度,ch是存储字符串的一维数组,len是字符串的长度
初始化函数示例:
String t;
StrAssign(&t,"I am happy");
int StrAssign(String *t,char *chars)
{
int i;
if(strlen(chars)>MAXSIZE+1) //字符串的长度大于数组的长度,操作失败,返回0
return 0;
for(i=0;i<strlen(chars);i++)
{
t->ch[i] = *(chars+i);
}
t->len = strlen(chars); //数组的长度
return 1; //返回1,操作成功
}
说明:这里的StrAssign函数的参数t使用的是指针,是因为结构体变量做做形参,用法和普通变量一样属于值传递方式,在子函数中要给t赋值,所以输入的是t的指针。与之对比的是(2)子函数中T是数组,传入的是数组的首地址(改变形参也就改变了实参)。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
平衡二叉树简介
平衡二叉搜索树(Self-balancing binary search tree)又被称为AVL树(有别于AVL算法),且具有以下性质:它是一 棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。 平衡二叉树的常用实现方法有红黑树、AVL、替罪羊树、Treap、伸展树等。 最小二叉平衡树的节点总数的公式如下 F(n)=F(n-1)+F(n-2)+1 这个类似于一个递归的数列,可以参考Fibonacci(斐波那契)数列,1是根节点,F(n-1)是左子树的节点数量,F(n-2)是右子树的节点数量。 image 平衡二叉树主要使用在数据的搜索查询中,二叉树支持动态的插入和查找,保证操作在O(height)时间,平衡二叉树的相关实现算法的应用: AVL树:最早的平衡二叉树之一。应用相对其他数据结构比较少。win
-
下一篇
一次让人脸红心跳的python数据分析
前些天,看到某公司对数据分析师的招聘要求有一条: 分析客户人群的购买习惯,并通过客户购买行为做出相关数据分析。 好项目,正好让大家练手Python,于是决定研究亚马逊上Top100的细分品类——女式内衣!!!的销售情况。 这个话题,遐想空间很大,各位老司机坐稳咯! 分析分为三步:数据采集、数据清理、可视化分析 第一步,采集数据。没有数据怎么办,用万能的Python爬嘛。 爬取商品排名和详情页链接,需要的字段为:排名、商品名、详情页链接。 爬取商品详情,需要的信息为: 店家:也就是竞争对手。分析其爆品情况,保留店家链接,后续可针对性挖掘分析; 价格:分析爆品价格区间,对商品定价有帮助; 上架时间:什么时候上的?爆了多久; 星级、评论数、评论标签、所有评论链接:爬取评论内容,来分析爆品的优劣势; 尺寸、颜色:嗯哼?也是非常有价值的参考数据; 图片链接:难道你不想看看商品长啥样吗? 第三步,数据转化为可视化图表,并做分析。 是不是迫不及待想要看过程了,来吧~ 如何爬取内衣数据 Python爬数据很简单,我个人总结大致就 3点: 请求数据 进行数据处理 写数据 第一点 请求的数据 会有几种可能...
相关文章
文章评论
共有0条评论来说两句吧...