char 数组是不是包含字符串?

Posted

技术标签:

【中文标题】char 数组是不是包含字符串?【英文标题】:Does char array contain string?char 数组是否包含字符串? 【发布时间】:2011-06-01 05:59:09 【问题描述】:

我有一个文本文件,想检查它是否包含字符串。 文本文件存储在 char 数组中:char buffer[512][128];

Q1:如果我将它缓冲在一个长数组而不是多维数组中会更容易吗? Q2:如何检查缓冲区是否包含字符串char *s1 = "Hello world!";? 我需要搜索多个字符串。

【问题讨论】:

您要搜索的多个字符串是常量还是用户提供的参数?您是否希望匹配任何、全部或介于两者之间的金额? strstr 可以,但我们可以根据其中一些要求进行优化。 @Chris Lutz 字符串都是不同的......我有一个数组。我会检查它们是否存在于旧文件中,如果没有,我会添加它们 好吧。由于您需要单独检查每个并添加它们(如果存在),因此strstr 是要走的路。 【参考方案1】:

    使用单个一维数组会容易得多。

    strstr(buffer, s1) != null(将buffer 更改为一维数组后)

【讨论】:

【参考方案2】:

strstr

【讨论】:

以上是关于char 数组是不是包含字符串?的主要内容,如果未能解决你的问题,请参考以下文章

如何判断一个数组中是不是包含一个字符或字符串

如何判断一个字符串中是不是包含另一个字符串

C语言中怎么判断一个字符串包含在另一个字符串里面

使用字符串而不是 char 数组时程序崩溃

如何检查字符串是不是包含字母表中的所有字母? [复制]

在c#中使用字符数组(char [])而不是字符串