C语言if与字符串的搭配
我是想设计一个程序,其中会用到定义字符串变量(不知道C里有没有这个定义),然后输入(scanf)字符串,这个字符串变量我想在if判断中使用。比如:定义的字符串变量是s,判...
我是想设计一个程序,其中会用到定义 字符串变量(不知道C里有没有这个定义) ,然后 输入(scanf)字符串,这个字符串变量 我想在if判断中使用。比如:定义的字符串变量是s,判断的是if(s=="输入的一个字符串"),可是总是出错,我是新手,可能有些知识不知道。想请教高手如何定义 字符串变量 或者说是 字符组变量,然后这个if(s=="输入的一个字符串")的判断式如何进行,或者说,里面"输入的一个字符串"应该自动转换成ASCII码,以便判断0或1?可是字符串也有ASCII码么? 补充,网上一些例子的字符串是用实数给的,他们用的是atoi函数(头文件:stdlib.h),将字符串转化为整形,比如把“980.123”转换为整形后,成为980在计算。可是这个我都不用atoi函数就能转化,我要的是把 字母或汉字 组成的字符串转化成整形 在if中判断。也许阐述有些冗余,请谅解。望高手解答!!
展开
3个回答
展开全部
字符串比较是调用strcmp()函数,例如你想让s等于输入的字符串就应该是
if(strcmp(s,“输入的字符串”)==0)
if(strcmp(s,“输入的字符串”)==0)
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
字符串的实现可以是字符数组,但是用字符数组就不可能完成有意义的s==“dddsdf”一类的比较了,因为数组是内置的类型,它的==操作的含义也是内定的,比较数组地址是否相同,而不是字符串内容,但是地址相同内容一定相同,反之不一定。
第二种实现字符串的方式是用标准模版库里面的 String 类,定义之后就什么都搞定了,String定义了自己==操作符,含义和楼主的意思是一样的。
String s;if(s==“abc”) do-something();//OK
第三个就是自己写一个类似的String类了,不过太麻烦,稳定性和效率都不一定好。
第二种实现字符串的方式是用标准模版库里面的 String 类,定义之后就什么都搞定了,String定义了自己==操作符,含义和楼主的意思是一样的。
String s;if(s==“abc”) do-something();//OK
第三个就是自己写一个类似的String类了,不过太麻烦,稳定性和效率都不一定好。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询