在列表字符串中查寻特定的字符串,报错了

在列表字符串中查找特定的字符串,报错了?#includestdio.h#define TRUE1#define FALSE 0void main(){int

在列表字符串中查找特定的字符串,报错了?

#include<stdio.h>
#define TRUE  1
#define FALSE 0
void main()
{
int find_char(char **strings,int value);
char strings[3][1000]={{"fdshkfbvf"},{"fsahfklank"},{"ashklakl"}};
char *p;
p=strings[0];
int ch='j';
if( find_char( &p,ch ) )
printf( "Find it.\n" );
else
printf( "Don't find it.\n" );
}
//在列表字符串中查找特定的字符串
int
find_char( char **strings,int value )
{
char *string;
while( ( string = *strings++) != NULL)
{
while( *string != '\0')
if( *string++ == value)
return TRUE;
}
return FALSE;
}

[解决办法]
楼主   string里面有个find函数,建议可以看一下
[解决办法]
#include<stdio.h>
#define TRUE  1
#define FALSE 0

int find_char(char *strings,int value);

void main()
{
    char strings[3][1000]={{"fdshkfbvf"},{"fsahfklank"},{"ashklakl"}};
    char *p;
    p=strings[0];
    int ch='j';
    if( find_char( p,ch ) )
        printf( "Find it.\n" );
    else
        printf( "Don't find it.\n" );
}
//在列表字符串中查找特定的字符
int
find_char( char *strings,int value )
{
    char *string = strings;
    while( *string++ != '\0')
    {
        if( *string++ == value)
            return TRUE;
    }
    return FALSE;
}
[解决办法]
问题一堆


//if you are using c compiler, change it to stdio.h
#include<cstdio>

bool find_char(char *strings, char value);

int main()
{
    char strings[3][1000]={{"fdsjkfbvf"},{"fsahfklank"},{"ashklakl"}};
    if( find_char(strings[0], 'j') ) //find the char of strings "fdsjkfbvf"
        printf( "Find it.\n" );
    else
        printf( "Don't find it.\n" );
}

bool find_char(char *strings, char value)
{
    while(*strings++)
    {
        if(*strings == value)
            return true;
    }

    return false;
}


[解决办法]
崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处。
判断是否越界访问,可以在数组的最后一个元素之后对应的地址处设置数据读写断点。如果该地址对应其它变量干扰判断,可将数组多声明一个元素,并设置数据读写断点在该多出元素对应的地址上。