我想使用strcmp比较字符数组的子范围和另一个字符串。我通过从文本文件中读取并将它们连接成一个更长的字符数组来创建dna字符数组。
char dna[10] = "ATGGATGATGA";
char STOP_CODON[3] = "TAA";
int TS1 = strcmp(&STOP_CODON[0]),dna[0]);
int TS2 = strcmp(&STOP_CODON[1]),dna[1]);
int TS3 = strcmp(&STOP_CODON[2]),dna[2]);
if(T1+T2+T3) == 3 {
int T = 1;
}
因此,如果它们全部匹配,则T返回为true(1)。 我想将STOP_CODON与三个字符的子范围中的DNA进行比较。 我无法找到简单的方法来做到这一点。在matlab中,您可以执行以下操作:
strcmp(STOP_CODON[1:3],dna[1:3])
在C语言中是否可以实现这样的功能?我希望最终能够遍历整个dna数组,该数组实际上包含60000个字符。
printf("%s.6\n",&dna[1]);
printf具有这种功能,但我想使用strcmp完成。在C中是否有比此更有效的方法?
strncmp(dna + offset, STOP_CODON, 3);
- Daniel Fischerchar STOP_CODON[3] = "TAA";
这样会导致数组没有以空字符结尾。最好使用char STOP_CODON[] = "TAA";
替代。 - wildplasser