#include <stdio.h>
#include<stdlib.h>
#include<string.h>
int lengthOfLongestSubstring(char*
s)
{
int i,j,sum=0,fab=0,p,sum2=0,node=0;
char a[1000];
//a=(char*)malloc(sizeof(char));
for(i=0;s[i]!='\0';i++)
{
fab=0;
for(j=0;j<i-node;j++)
{
if(s[i]!=a[j])
{
fab+=1;
}
else if(s[i]==a[j])
{
if(sum2<sum)
sum2=sum;
sum=0;
node+=sum;
memset(a,0,sizeof(a));
break;
}
}
if(fab==i)
{
a[sum]=s[i];
sum++;
}
}
if(sum2<sum)
sum2=sum;
return sum2;
}
int main()
{
char *s;
int a;
s=(char*)malloc(sizeof(char));
scanf("%s",s);
a=lengthOfLongestSubstring(s);
printf("%d",a);
return 0;
}
执行出错:Line 12: Char 23: runtime error: index 500 out of bounds for type ‘char [500]’ (solution.c)
测试用例:
1、abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
2、
hijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789hijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789hijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789hijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789hijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789hijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789