| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 41655 人关注过本帖
标题:怎么定义字符串变量!
只看楼主 加入收藏
嘟嘟
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2004-8-6
收藏
 问题点数:0 回复次数:8 
怎么定义字符串变量!

char ct是字符变量,而不是字符串变量!

请问用什么定义字符串变量

还有就是字符串不能用”==“比较的

那要用什么做比较??

谁帮我改改这个,我万分感激!!!

http://bbs.bc-cn.net/bbs/dispbbs.asp?boardID=44&ID=5100&page=1

搜索更多相关主题的帖子: 变量 定义 字符 
2004-09-07 17:46
空前
Rank: 1
等 级:新手上路
帖 子:1146
专家分:0
注 册:2004-5-11
收藏
得分:0 

char a[100]

用字符数组定义字符串

用“string.h"文件头中的

strcmp(串1,串2)比较,

相等时返回值为1


2004-09-07 18:19
young
Rank: 3Rank: 3
等 级:论坛游侠
威 望:2
帖 子:223
专家分:160
注 册:2004-9-5
收藏
得分:0 

1, 使用字符数组,如: char StringArray[] = "I am a boy";

2, 使用字符指针 char *pString; 可以直接制向一个字符串 pString = "I am a boy"; 也可以申请自己的空间,然后把字符串通过strcpy函数拷贝进来,如: pString = (char *)malloc( (strlen("I am a boy") + 1) * sizeof(char) ); strcpy(pString, "I am a boy");

比较的话如2楼所说,使用strcmp函数.


如果你爱C语言,请你爱指针; 如果你爱指针,请你爱指针的指针;
2004-09-07 19:29
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 
以下是引用空前在2004-09-07 18:19:03的发言:

char a[100]

用字符数组定义字符串

用“string.h"文件头中的

strcmp(串1,串2)比较,

相等时返回值为1

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

int main(void) { char *buf1 = "aaa", *buf2 = "aaa";

printf("%d",strcmp(buf2, buf1));

}

你看看是多少?

strcmp函数的原码大至如下:

int strcmp(char *string1,char *string2)

{

while(*string1)if(*string1++!=*string2++)return *string1-*string2;

return 0;

}

所以,两串相同返回的是0,两串不同返回第一个不同之处的差值。


九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2004-09-07 21:02
kuangjingbo
Rank: 1
等 级:新手上路
帖 子:312
专家分:0
注 册:2004-4-24
收藏
得分:0 
楼上几位都说的不错!

永不放弃!
2004-09-07 21:15
嘟嘟
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2004-8-6
收藏
得分:0 
感谢感谢!!!!!爱死你们了!

2004-09-08 10:53
空前
Rank: 1
等 级:新手上路
帖 子:1146
专家分:0
注 册:2004-5-11
收藏
得分:0 
以下是引用knocker在2004-09-07 21:02:36的发言:

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

int main(void) { char *buf1 = "aaa", *buf2 = "aaa";

printf("%d",strcmp(buf2, buf1));

}

你看看是多少?

strcmp函数的原码大至如下:

int strcmp(char *string1,char *string2)

{

while(*string1)if(*string1++!=*string2++)return *string1-*string2;

return 0;

}

所以,两串相同返回的是0,两串不同返回第一个不同之处的差值。

不好意思,记错了,谢谢大哥的提醒!


2004-09-09 23:35
mikewolf
Rank: 1
等 级:新手上路
帖 子:175
专家分:0
注 册:2004-7-3
收藏
得分:0 
到底为多少我们可以自己定义,不过应当符合可移植性标准.
2004-09-11 21:08
live41
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:67
帖 子:12442
专家分:0
注 册:2004-7-22
收藏
得分:0 
新版C++里面提供类型为string的变量,只要包含头文件string.h,且是对象调用,内有函数可用。
2004-09-12 00:27
快速回复:怎么定义字符串变量!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025670 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved