C++ int main(int argc, char* argv[]) arguments 使用问题

C++ int main(int argc, char* argv[]) arguments usage problem

公共语言运行时支持设置为 (/clr)。当我尝试写入(显示)参数 argv[1] 时,什么也没有发生。请任何帮助。编译警告状态 - 强制值为 bool 'true' 或 'false'(性能警告)

int main(int argc, char* argv[])
{
    Console::WriteLine(argv[1]);
}

问题是没有 Console::WriteLine 函数接受 char*。您应该将其转换为 String 对象。

关于警告消息和输出,这是因为编译器找不到与 WriteLine 调用完全匹配的函数,如果可能,它会选择另一个函数。在这种情况下,它选择接受 Boolean 参数的那个,因为指针可以隐式转换为 bool,后者又可以转换为 Boolean。输出是 "true" 因为在指针到布尔的转换中任何非空指针都被认为是真的。