Whats wrong in it...testcase 0 not passed

#include
#include
using namespace std;
int main()
{
int t;
cin>>t;

for(int i=0;i<t;i++)
{
	string string1;
	
	cin>>string1;

	string string2;

	cin>>string2;
		string s3;
	int l=string1.length();
	
	for(int i=0;i<l;i++)
	{
		if(string1[i]==string2[i])
		{
			s3[i]='0';
		}
		else
		{
			s3[i]='1';
			}
	}
for(int i=0;i<l;i++)
{
	cout<<s3[i];
}

}
return 0;

}

#include
#include
using namespace std;
int main()
{
int t;
cin>>t;

for(int i=0;i<t;i++)
{
	string string1;
	
	cin>>string1;

	string string2;

	cin>>string2;
		string s3;
	int l=string1.length();
	
	for(int i=0;i<l;i++)
	{
		if(string1[i]==string2[i])
		{
			s3[i]='0';
		}
		else
		{
			s3[i]='1';
			}
	}
for(int i=0;i<l;i++)
{
	cout<<s3[i];
}

}
return 0;

}

hello @sneha23
a)

declare ur s3 string of size l (i,e string1.length().
string s3(l,’ '); // use this syntax
b) print output for each case in separate line

what is that after l in string(l,’ ');

space character …

why do we use that???

the first argument of string constructor is length, second is a character that this string will hold at its evry index.
so here we are using ’ ’ (space) , u can use any other charcter

okay it just got slippedd out of my mind
thanx closing the doubt:)