初始化字符串的字符数组太长 [英] initializer-string for array of chars is too long
本文介绍了初始化字符串的字符数组太长的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我不断收到此错误:初始化字符串的字符数组太长
即使我改变NUM和长度为1,但它仍然得到错误:
的#include<&iostream的GT;
#包括LT&; CString的GT;
使用命名空间std;诠释的main()
{
const int的NUM = 11;
const int的长度= 25;
字符数组[NUM] [长度] = {贝基Warre,555-1223
乔发疯,555-0097
格日帕尔默,555-8787
林恩presnell,555-1212
霍利加迪斯,555-8878
萨姆·威金斯,555-0998
鲍勃·凯恩,555-8712
蒂姆·海恩斯,555-7676
沃伦·加迪斯,555-9037
让詹姆斯,555-4939
罗恩 - 帕尔默,555-2893}; 字符搜索[长度]
COUT<< 输入要搜索的字符串:;
cin.getline(搜索,长度); 字符* PTR = NULL;
INT I;
对于(i = 0; I<民;我++)
{
PTR =的strstr(数组[NUM],搜索);
如果(PTR!= NULL)
COUT<<数组[我]
}
如果(PTR == NULL)
COUT<< 没有找到匹配<< ENDL; 返回0;
}
解决方案
我想这是因为没有在你的数组初始化任何逗号......
字符数组[NUM] [长度] = {贝基Warre,555-1223
乔发疯,555-0097
格日帕尔默,555-8787
林恩presnell,555-1212
霍利加迪斯,555-8878
萨姆·威金斯,555-0998
鲍勃·凯恩,555-8712
蒂姆·海恩斯,555-7676
沃伦·加迪斯,555-9037
让詹姆斯,555-4939
罗恩 - 帕尔默,555-2893}
I keep getting this error: initializer-string for array of chars is too long Even if I change num and length to 1, it still gets the error:
#include <iostream>
#include <cstring>
using namespace std;
int main()
{
const int num = 11;
const int length = 25;
char array[num][length] = { "Becky Warre, 555-1223"
"Joe Looney, 555-0097"
"Geri Palmer, 555-8787"
"Lynn Presnell, 555-1212"
"Holly Gaddis, 555-8878"
"Sam Wiggins, 555-0998"
"Bob Kain, 555-8712"
"Tim Haynes, 555-7676"
"Warren Gaddis, 555-9037"
"Jean James, 555-4939"
"Ron Palmer, 555-2893" };
char search[length];
cout << "Enter a string to search: ";
cin.getline(search, length);
char *ptr = NULL;
int i;
for (i = 0; i < num; i++)
{
ptr = strstr(array[num], search);
if (ptr != NULL)
cout << array[i];
}
if (ptr == NULL)
cout << "No match found" << endl;
return 0;
}
解决方案
I think it's because there aren't any commas in your array initialization...
char array[num][length] = { "Becky Warre, 555-1223",
"Joe Looney, 555-0097",
"Geri Palmer, 555-8787",
"Lynn Presnell, 555-1212",
"Holly Gaddis, 555-8878",
"Sam Wiggins, 555-0998",
"Bob Kain, 555-8712",
"Tim Haynes, 555-7676",
"Warren Gaddis, 555-9037",
"Jean James, 555-4939",
"Ron Palmer, 555-2893" }
这篇关于初始化字符串的字符数组太长的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文