并不 const char *s 意味着"s是一个指向常量字符的指针"然后为什么它会给我这个警告?我不是想改变价值观.
在第一个功能警告是return discards 'const' qualifiers from pointer target type.
并在第二次警告是assignment discards 'const' qualifiers from pointer target type.
我试图制作定义的库函数string.h,并告诉我如何纠正它.
char *my_strchr( const char *s, int c )
{
for(;*s!='\0';s++)
if(*s==c)
return s; // warning
return 0;
}
char *my_strpbrk( const char *s1, const char *s2 )
{
char *s2ptr;
for(;*s1!='\0';s1++)
for(s2ptr=s2;*s2ptr!='\0';s2ptr++) //warning
if(*s1==*s2ptr)
return s2ptr;
return 0;
}
Run Code Online (Sandbox Code Playgroud) c ×1