2013-04-21 83 views
1

我正在用C++编写服务器程序,我在接受const char的方法。我有这个代码,但它不会编译说const char变量的问题

27 26 C:\Users\Owner\Desktop\main.cpp [Error] expected primary-expression before ',' token 

有人可以请解释发生在我身上的事情。

std::string str = "Hello"; 
const char * c = str.c_str(); 
iResult = getaddrinfo(c*, 23, &hints, &result); 

回答

2

你有getaddrinfo(c*, ...,你应该删除多余*,第二个参数应该是作为一个字符串的端口号:

getaddrinfo(c, "23", &hints, &result); 
+0

我试过,但后来我的编译器抱怨,说27 46 C:\ Users \ Owner \ Desktop \ main.cpp [错误]从'int'无效转换为'const char *'[-fpermissive] – 2013-04-21 12:43:20

+0

@JoshSobel:请参阅我编辑的答案。 – RichieHindle 2013-04-21 12:43:48

+0

哦,谢谢虐待当我无法知道端口号是一个字符串时接受它 – 2013-04-21 12:44:27