假设我有以下代码和输出:
for (j = 0; j <= i; j++)
printf("substring %d is %s\n", j, sub_str[j]);
Run Code Online (Sandbox Code Playgroud)
输出:
substring 0 is max_n=20 substring 1 is max_m=20
现在我只想打印一些子串.但是,如果我尝试有条件地这样做:
for (j=0; j <=i; j++) {
if (sub_str[j] == "max_n=20") {
printf("substring %d is %s\n", j, sub_str[j]);
}
}
Run Code Online (Sandbox Code Playgroud)
我根本没有输出.我的代码出了什么问题?
你不能==用来比较C中的字符串.你必须使用strcmp.
for (j=0; j<=i; j++) {
if (strcmp(sub_str[j], "max_n=20") == 0) {
printf("substring %d is %s\n", j, sub_str[j]);
}
}
Run Code Online (Sandbox Code Playgroud)