Jor*_*Phi 2 c++ if-statement const char
我有一个问题,比较一个const char和一个字符串......如果我使用Com_Printf("%s",值); 它返回我想要的(0.3c),但是如何将值转换为字符串并将其与0.3c进行比较?这就是我所拥有的:
value = SearchInfostring(msg, "shortversion");
if (value != "0.3c")
{
Com_Printf (MSG_WARNING,
Com_Printf (MSG_WARNING,
"> WARNING: Value: Should be 0.3c, is: %s \n",
value);
//Run stuff
}
Run Code Online (Sandbox Code Playgroud)
返回:警告:值:应为0.3c,为:0.3c
如果value的类型为const char*,则表达式
value != "0.3c"
Run Code Online (Sandbox Code Playgroud)
比较两个指针(地址),而不是字符串.您想比较字符串和字符串文字,因此可以使用strcmp:
if(strcmp(value, "0.3c"))
{
// strings are not equal
}
else
{
// strings are equal
}
Run Code Online (Sandbox Code Playgroud)
请记住,C++中首选的字符串类型是std::string.
| 归档时间: |
|
| 查看次数: |
8389 次 |
| 最近记录: |