C 지식을 새로 고쳤으며 문자열을 뒤집기 위해이 프로그램을 교차 시켰습니다. 마지막 반전 된 문자열의 마지막 문자에 '\ 0'값을 할당해야한다는 느낌이 들었습니다. 그렇지 않으면 가비지 값이있을 수 있습니다. 이 코드가 맞는지 또는 수정해야하는지 알려주십시오. 미리 감사드립니다! man gets
에 따라while 루프를 사용하여 C로 문자열 반전하기
#include<stdio.h>
#include<string.h>
void main()
{
char str[100],temp;
int i,j=0;
printf("nEnter the string :");
gets(str);
i=0;
j=strlen(str)-1;
while(i<j)
{
temp=str[i];
str[i]=str[j];
str[j]=temp;
i++;
j--;
}
printf("nReverse string is :%s",str);
return(0);
}
'마지막 역전 된 문자열의 마지막 문자가 '\ 0'값으로 지정되어야한다고 생각합니다. '시도해 보셨습니까? – yamafontes
시도하기가 어렵습니까? – devnull
같은 메모리 조각에있는 문자를 바꿔 넣기 때문에 마지막 '\ 0'은 그대로 있고 문자열의 끝 부분에 있습니다. –