C++字符串比较问题,和书上说的不一样
今天写了这么一个程序
#include <iostream>
using namespace std;
int main() {
if ("join" == "join")
cout << "equal" << endl;
else
cout << "not equal" << endl;
return 0;
}
输出总是equal,我已经试了vs8,vc6,g++三个编译器,结果都一样,不知道是为什么。书上说应该会分配不同的内存空间,比较时比较的是首地址,应该是不同的啊,怎么输出总是相同呢?
更怪的是我写了如下程序
#include <stdio.h>
int main(int argc, char *argv[])
{
printf("%p\n", "join");
printf("%p\n", "join");
return 0;
}
输出的地址也是相同的,更糊涂了
#include <iostream>
using namespace std;
int main() {
if ("join" == "join")
cout << "equal" << endl;
else
cout << "not equal" << endl;
return 0;
}
输出总是equal,我已经试了vs8,vc6,g++三个编译器,结果都一样,不知道是为什么。书上说应该会分配不同的内存空间,比较时比较的是首地址,应该是不同的啊,怎么输出总是相同呢?
更怪的是我写了如下程序
#include <stdio.h>
int main(int argc, char *argv[])
{
printf("%p\n", "join");
printf("%p\n", "join");
return 0;
}
输出的地址也是相同的,更糊涂了
...全文
相关推荐
用c++比较两个字符串的大小
使用指针和for循环来比较两个字符串大小 ,字符串即为一个字符数组
Graphviz版本2.38:图形可视化工具安装与应用
Graphviz是图形可视化软件,它利用了DOT这种基于文本的图形描述语言,将复杂的结构化数据转换为易于理解的图形表示。Graphviz适用于各种操作系统,广泛应用于软件工程、数据科学、网络管理等众多领域,能有效地辅助开发者和分析师理解和解释复杂的结构信息。dot.exe允许用户通过DOT语言自定义图形的样式,包括颜色、形状、边的样式等。通过这些自定义选项,用户可以创建独特的视觉效果,以满足特定的呈现需求。
C++实现strcmp字符串比较的深入探讨
本篇文章是对使用C++实现strcmp字符串比较进行了详细的分析介绍,需要的朋友参考下
C++ 重载运算符+==-用于字符串的比较
C++ ,VS2010平台编辑,下载后可以直接使用,模拟打分及求平均分的过程
实现3-17字符串比较问题.cpp
实现3-17字符串比较问题.cpp


新手乐园
