C ++如何使用文本输入和If语句打开应用程序

时间:2015-02-28 16:06:46

标签: c++ windows c++11

我正在尝试使用C ++创建一个简单的应用程序启动器。

#include <iostream>
#include <stdlib.h>
#include <string>
using namespace std;

int main()
{
int textin;
cin >> textin;
if ( textin == "ATLauncher" )
    {
    system("C:\\Users\\NAME\\Main\\minecraftlaunchers\\AtLauncher\\ATLauncher.exe");
    system ("pause");
    return 0;
    }
}

使用Dev C ++时出现的错误消息

  

[错误] ISO C ++禁止指针和整数[-fpermissive]

之间的比较

2 个答案:

答案 0 :(得分:1)

我在您的代码中发现的问题:

textin被声明为int,但您将其与字符串文字("ATLauncher")进行比较。将textin的类型更改为std::string(并包含标题<string>)。

反斜杠(\)是C / C ++中字符串中的转义字符。为了放置真正的反斜杠,请为\\使用\

其他一些观察结果:

system<stdlib.h>中声明,而不是<windows.h>

system("pause")并非必须存在。它只会让你必须在程序启动终止后按某个键才能关闭控制台。

答案 1 :(得分:0)

system()是一个可能的std lib调用来启动命令(另请参见spawn,exec ...) 你不需要运行暂停,因为系统不应该在第一个命令完成之前返回

你的字符串\中的

应该是\ \ x表示特殊字符x即\ n(新行)