我刚刚开始使用C ++。
我正在尝试获取字符串“ str”的前三个字符,并将其与已知字符串(例如“ knownString”)进行比较。
为此,我编写了以下代码行:
如果(str.substr(start,3)== knownString)
其中“ start”是我之前声明的整数。但是我一直收到以下警告消息:
警告:隐式转换将签名:“ int”更改为 “ std :: __ cxx11 :: basic_string,** ** std :: allocator> :: size_type”(又名“ unsigned int”)
有谁知道我可以添加什么,或者我错过了此声明以解决此问题?
我有一个以字符数组形式呈现的字符串temp。我想将这个字符数组插入到另一个数组中temp_list,然后打印出这个数组的内容。换句话说,将许多字符数组存储在单个数组中。谁能告诉我这是否可行以及如何使其发挥作用?
这是我想要实现的目标的一个例子:
int main()
{
char temp[5] = "begin";
char temp_list [10];
temp_list[0] = temp;
for (int i = 0; i < strlen(temp_list); i++)
{
printf("Labels: %s,", temp_list[i]);
}
}
Run Code Online (Sandbox Code Playgroud)
当我运行这个程序时,它打印出乱码。
任何形式的指导将不胜感激。谢谢。
编辑:
谢谢您的回答。他们都非常有帮助。但我还有另一个问题...如果我想插入多个字符数组怎么办temp_list?多次使用strcpy似乎不起作用,因为我假设该函数基本上用?temp_list传递的字符串替换了 的整个内容。strcpy