gpt4 book ai didi

C++: STRING 函数返回十六进制值而不是字符串

转载 作者:太空宇宙 更新时间:2023-11-04 15:02:05 25 4
gpt4 key购买 nike

在我学习 C++ 的第 2 个月期间,我得到了这个:STRING 类型的函数,用于从两个用户输入的菜肴中建立和返回菜单(在VisualStudio2013中编译运行)

#include "../../std_lib_facilities.h"

string LeMenu(string meal, string dessert) //a F() concatenates 2 strings
{
return meal, dessert; //also tried meal+dessert
}

int main()
{
string course1, course2;
cout << "What is your chice today Sir?\n";
cin >> course1 >> course2; //request to input meals
LeMenu(course1,course2);
cout << "Is " << LeMenu << " ok?\n"; //here we output
keep_window_open();
}

但它总是返回一个十六进制值,我不知道为什么:(在VisualStudio2013中编译运行)

Is 012D15CD ok? 

而不是 JamEggs 好吗? (作为例子)

据我所知,我不明白为什么,我的教科书甚至没有建议这是一个可能的问题,而且我在互联网上找不到任何提示!。不仅仅是解决它的方法,最好了解这是否是预期的 mssbehavior。谢谢大家!

最佳答案

你正在打印出 LeMenu 的函数地址。试试这个:

cout << "Is " << LeMenu(course1, course2) << " ok?\n";  

请注意,您返回的可能不是您想要的:

return meal, dessert; //Only returns dessert

你可能想要:

return meal + dessert;

关于C++: STRING 函数返回十六进制值而不是字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31791395/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com