描述:
strstr声明:
char *strstr(const char *haystack, const char *needle);
函数的定义:
hostinfo_t *extract_host_from_url(const char *url) {
/* ... */
char *scheme_pos = strstr(url, "://");
/* ... */
}我如何使用它:
void rewrite_url(string &url) {
/* ... */
hostinfo_t * hostinfo = extract_host_from_url(url.c_str());
/* ... */
}错误信息:
错误:从“const*”到“char*”-fpermissive的转换无效 ( *scheme_pos = strstr(url,"://");
问题:
事情出了什么问题?
发布于 2016-10-27 07:12:17
C++ strstr声明,如<cstring> is overloaded中给出的
const char* strstr( const char* str, const char* target );
char* strstr( char* str, const char* target );使用您的参数集,您将调用第一个函数,这就是为什么返回类型为const char*。
https://stackoverflow.com/questions/40278280
复制相似问题