gpt4 book ai didi

c++ - 从字符串数组中获取值

转载 作者:行者123 更新时间:2023-11-28 07:05:13 24 4
gpt4 key购买 nike

我试图从数组中进行字符串搜索..

看看这个....

int   TotalBadStrings = 3;  
// START INFINITE SCANNING!
while(true)
{

for (int BadStringsCount = 0; BadStringsCount < TotalBadStrings; BadStringsCount++)
{

char* StringsToSearch[] = {"badstring1", "badstring2"};

char *lpData = (CHAR*)GlobalAlloc(GMEM_FIXED, MAX_READ),
lpOrig[] = StringsToSearch[BadStringsCount];


// HERE I MAKE A SCAN IN MEMORY USING lpOrig

}

当我尝试编译时,我得到了这个

[Error] initializer fails to determine size of 'lpOrig'

214 54 [Error] array must be initialized with a brace-enclosed initializer

问题是当我尝试从我的数组 StringsToSearch 中获取其中一个字符串时

我正在使用 DEV C++ 5.6.1 和 GCC 4.8.1 32 位

有什么想法吗?提前谢谢你!

最佳答案

我想你的意思是:

const char* lpOrig = StringsToSearch[i];

但目前还不清楚您要做什么。但是您应该改用 vector 和 string 。这就是您初始化它的方式,假设您已经到达那里的数组。

  #include <string>
#include <vector>

...

std::vector<std::string> strings;
strings.assign(&StringsToSearch[0], &StringsToSearch[sizeof(StringsToSearch)/sizeof(StringsToSearch[0])]);

一个完整的例子:

#include <iostream>
#include <string>
#include <vector>

int main(int argc, char* argv[])
{
const char* StringsToSearch[] = {"asd1", "asd2", "asd3"};

std::vector<std::string> strings;
strings.assign(&StringsToSearch[0], &StringsToSearch[sizeof(StringsToSearch)/sizeof(StringsToSearch[0])]);
std::vector<std::string>::const_iterator begin = strings.begin();
while (begin != strings.end())
{
std::string s = *begin;

std::cout << "Comparing: " << s << std::endl;
//do you comparison here

++begin;
}

return 0;
}

关于c++ - 从字符串数组中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21864155/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com