根据书上讲,两个字符串的比较是地址的比较.下面运行结果理应为:"not equal",但是现在输出"equal",
来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/06/23 01:36:34
根据书上讲,两个字符串的比较是地址的比较.下面运行结果理应为:"not equal",但是现在输出"equal",
#include
void main()
{
if("join"=="join")//两个字符串的比较是地址的比较.运行结果理应为:"not equal",so tell me y
cout
#include
void main()
{
if("join"=="join")//两个字符串的比较是地址的比较.运行结果理应为:"not equal",so tell me y
cout
![根据书上讲,两个字符串的比较是地址的比较.下面运行结果理应为:](/uploads/image/z/18025897-49-7.jpg?t=%E6%A0%B9%E6%8D%AE%E4%B9%A6%E4%B8%8A%E8%AE%B2%2C%E4%B8%A4%E4%B8%AA%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E6%AF%94%E8%BE%83%E6%98%AF%E5%9C%B0%E5%9D%80%E7%9A%84%E6%AF%94%E8%BE%83.%E4%B8%8B%E9%9D%A2%E8%BF%90%E8%A1%8C%E7%BB%93%E6%9E%9C%E7%90%86%E5%BA%94%E4%B8%BA%3A%22not+equal%22%2C%E4%BD%86%E6%98%AF%E7%8E%B0%E5%9C%A8%E8%BE%93%E5%87%BA%22equal%22%2C)
因为虽然你看到了两个"join",其实系统只分配了一个字符串常量"join"(为了节省空间),因此两个是一个地址.
再问: 额滴个神。我发两个问题救你一个人回答。 由于字符串的地址属性,两个同样字符组成的字符串的地址应该不相等才对啊?编译时,应该分给两字符串不同的地址才对啊?
再答: 问题在于"join"是常量,不是变量。多次使用同一数值的常量只会反复调用同一地址的数值。 这正是编译器所做的优化,否则就要耗费不必要的空间了。
再问: 额滴个神。我发两个问题救你一个人回答。 由于字符串的地址属性,两个同样字符组成的字符串的地址应该不相等才对啊?编译时,应该分给两字符串不同的地址才对啊?
再答: 问题在于"join"是常量,不是变量。多次使用同一数值的常量只会反复调用同一地址的数值。 这正是编译器所做的优化,否则就要耗费不必要的空间了。
2、下面的程序用来比较两个字符串a和b的大小,如果字符串a大于字符串b,则输出“a>b”,否则输出“ab)
equal to 与equal with比较
equal和equal to的区别
翻译一下be equal to sb.in sth.并简单讲一下equal的用法,
equal
c语言的问题编一个程序,将两个字符串s1,s2比较,如果s1>s2,输出一个正数;s1
be equal to与equal to意思上的区别
equal和equate的区别
C语言,比较两个字符串S1和S2的大小
两个字符串比较大小的程序C语言
比较三个数的大小,输出比较结果
运行下面的程序,如果键盘上输入: ab c def 则输出结果为____.