मैं एक स्ट्रिंग को उलटा करने की कोशिश कर रहा हूं।बस त्रुटि समस्या निवारण
#include<stdio.h>
#include<string.h>
int main(){
char *c="I am a good boy";
printf("\n The input string is : %s\n",c);
printf("\n The length of the string is : %d\n",strlen(c));
int i,j;
char temp;
int len=strlen(c);
for(i=0,j=len-1;i<=j;i++,j--)
{
temp=c[i];
c[i]=c[j];
c[j]=temp;
//printf("%c\t%c\n",*(c+i),*(c+(len-i-1)));
}
printf("\n reversed string is : %s\n\n",c);
}
कोड आउटपुट एक Bus error : 10
:
इस कोड को मैंने कोशिश की है।
लेकिन अगर मैं एक ही कोड को फिर से लिखने के रूप में:
int main(void)
{
char *str;
str="I am a good boy";
int i,j;
char temp;
int len=strlen(str);
char *ptr=NULL;
ptr=malloc(sizeof(char)*(len));
ptr=strcpy(ptr,str);
for (i=0, j=len-1; i<=j; i++, j--)
{
temp=ptr[i];
ptr[i]=ptr[j];
ptr[j]=temp;
}
printf("The reverse of the string is : %s\n",ptr);
}
यह बिल्कुल ठीक काम करता है।
बस कोड या विभाजन विभाजन को फेंकने वाला पहला कोड क्यों है?
कृपया अपना कोड दोबारा सुधारें। –
मैंने जितना संभव हो प्रारूपण करने की कोशिश की, लेकिन मैं वास्तव में नहीं जानता कि उन्हें कैसे गठबंधन किया जाए। – sethu
कृपया चार कोडों के साथ इसे इंडेंट करके अपना कोड प्रारूपित करें। – SLaks