我想做一个这样的应用程序:
这是控制台,例如:
write_number 5 Your number is 5
怎么做?
有人可以解释一下吗?
答案 0 :(得分:9)
如果您希望通过在Stack Overflow上提问来学习编程,那么您将会长时间参与其中。我建议您Programming -- Principles and Practice Using C++或Accelerated C++。
关于你的问题:
#include <iostream>
#include <cstdlib>
int main(int argc, char** argv)
{
std::cout << "your number is " << std::atoi(argv[1]) << '\n';
}
请注意,这不是此程序的最佳版本(例如,如果用户未传递参数,或未传递数字作为参数,或传递的数字大于{{1或者传递一个int
或float
而不是double
的数字?),但它确实会给你一个想法。
更高级的主题 - 无需购买书籍 - 可以在Bjarne Stroustrup's technical FAQ找到(Stroustrup创建了C ++的原始版本)。
答案 1 :(得分:6)
这是关于cin和cout的基本教程(“see-in / out”)
答案 2 :(得分:4)
使用控制台输入和输出。这些在C ++中最简单地通过std :: cin和std :: cout:
公开http://www.cplusplus.com/doc/tutorial/basic_io/
#include <iostream>
int main(int argc, char* argv[])
{
int value;
std::cout << "write_number ";
std::cin >> value;
std::cout << "Your number is " << value << "\n";
return 0;
}
best 如何使用这些功能,请查看此常见问题解答:
http://www.parashift.com/c++-faq-lite/input-output.html
修改强>
如果您尝试将命令行参数添加到您的程序中,那么您的会话将如下所示:
C:\用户\ MyUserName输入&GT; my_program 5
你的电话号码是5
然后使用传递给main
函数的参数。这是运行它时传递给程序的所有参数的数组:
#include <iostream>
int main(int argc, char* argv[])
{
std::cout << "Your number is " << argv[1] << "\n";
}
传入的参数是字符串(文本)形式。如果你想将它们转换为数字,以便你可以进行算术或与它们进行比较,这是一种方法:
http://www.parashift.com/c++-faq-lite/misc-technical-issues.html#faq-39.2
#include <iostream>
#include <sstream>
#include <string>
#include <stdexcept>
class BadConversion : public std::runtime_error
{
public:
BadConversion(std::string const& s)
: std::runtime_error(s)
{ }
};
template<typename T>
T ConvertTo(std::string const& s)
{
std::istringstream i(s);
T x;
if (!(i >> x))
throw BadConversion("convertTo(\"" + s + "\")");
return x;
}
int main(int argc, char* argv[])
{
int first_parameter = ConvertTo<int>(argv[1]);
std::cout << "Your number is " << first_parameter << "\n";
return 0;
}
答案 3 :(得分:2)
我们如何逐步完成此事。
首先,我们想要询问用户输入,我们将如何进行此操作?
// TODO: Ask user for input.
一旦我们有了这个输入,我们将如何构建新的字符串?
// TODO: Make new string.
现在我们有了新的字符串,我们如何向用户显示它?
// TODO: Display the string.
这样就可以使用以下骨架填写:
#include <iostream>
int main()
{
// TODO: Ask user for input.
// TODO: Make new string.
// TODO: Display the string.
return 0;
}
要完成此操作,您可以使用cout
,cin
和string
。 (当然你也可以直接在cout中进行字符串格式化)
答案 4 :(得分:0)
int num = 0;
printf("write_number ");
cin >> num;
cout << "Your number is " << num;
答案 5 :(得分:0)
int number = 5;
cout << "Your number" << number;
答案 6 :(得分:0)
如果您想要做一些更具互动性的事情,但仍希望在控制台中工作,请查看curses。