gpt4 book ai didi

c - 跳过两个字符压缩的if语句

转载 作者:太空宇宙 更新时间:2023-11-04 06:47:03 24 4
gpt4 key购买 nike

我不明白为什么即使字符相同,程序也会跳过 for 循环中的 if 语句。

该程序的目的是在另一个字符串中查找子字符串。

顺便说一句,我是编程新手,所以我希望这不是愚蠢的事情 ;)

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdbool.h>
int main()
{
bool isTrue=false;
char str[50];
char sub[50];
int i,j,t;

printf("Hello please enter a string: ");
gets(str);
printf("The substring you want to find: ");
gets(sub);


for(i=0;str[i] != 0; i++)
if(sub[0] == str[i])
for(j=0, t=i; sub[j] != 0; j++, t++){
bool isTrue=true;
if(sub[j]!=str[t])
isTrue=false;
}


if(isTrue)
printf("The substring found !");
else
printf("No substring");

}

最佳答案

改变这一行:

bool isTrue=true;

这行声明了一个全新的变量,并隐藏了之前的变量:

isTrue=true;  // Remove the "bool"

只赋值,不创建新变量。

关于c - 跳过两个字符压缩的if语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56532648/

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