The following code is for searching a string or character in another string :-
`
#include<stdio.h>
#include<string.h>
int strindex( char primary[] , char searchfor[]){
    int k;
    for(int i = 0 ; primary[i] != '\0' ; i++){
        for(int j = i , k = 0 ; (searchfor[k] != '\0') && (primary[j] == searchfor[k]) ; j++ , k++){
            ;
        }
    if( k > 0 && searchfor[k] == '\0'){
        return i;
        }
    }
    return -1; 
}
int line( char *str ){
    int i = 0;
    char c;
    for (;(c = getchar()) != '\n' && (c != EOF) ; i++){
        str[i] = c;
    }
    if( c = '\n') str[i] = '\n';
    str[++i] = '\0';
    return i;
}
int main(){
    char str1[100] , str2[100];
    int i ;
    puts("Enter the main string:-");
    line(str1);
    puts("Enter string to search for:-");
    line(str2);
    i = strindex(str1 , str2);
    if( i >= 0){
        printf("String found at index : %d \n",i);
    }else{
        puts("stirng not found.");
    }
    puts("");
    return 0;
}
`
The compile result :-
PS E:\Workspace\C> gcc p1.c
PS E:\Workspace\C> ./a.exe
Enter the main string:-
this is a demo text
Enter string to search for:-
demo
PS E:\Workspace\C>
I am using visual studio code , As we can see that the "if-else" and "print" statements after the function call are not being executed . I have tried a lot , but could not make it . Please someone help me and tell me where I am going wrong ??
 
    