배열 문자뒤집기에서 이해가 잘 안됩니다만
-
게시물 수정 , 삭제는 로그인 필요
#include<stdio.h>
int main(void)
{
char string[100];
int len=0, i;
printf("문자열 입력");
scanf("%s",string);
while(string[len]!='\0')
len++;
for(i=0;i<len/2;i++)
{
char temp=string[i];
string[i]=string[len-i-1];
string[len-i-1]=temp;
}
printf("변경된 문자열:%s \n", string);
return 0;
}
char temp=string[i];
string[i]=string[len-i-1];
string[len-i-1]=temp;
여기서 입력한 문자열이 abcdefgh라면 string[8]입니까 string[9]가 되는 겁니까?
, abcdefgh면은 0부터7까지문자열이 저장되고 나머지 8에는 널이 저장되는거 맞습
니까? 8이면 9개 저장 공간이 할당되는거니까..
근데 딴페이지는 char str[6]="hello";가 되는데 왜 여기서 5개면 6개 저장공간이 할
당되니까. 충분한데 뭣하러 공간을 7개나 만드나요?
제가 잘못이해 했는지 지적바랍니다.
#include<stdio.h>
int main(void)
{
char string[100];
int len=0, i;
printf("문자열 입력");
scanf("%s",string);
while(string[len]!='\0')
len++;
for(i=0;i<len/2;i++)
{
char temp=string[i];
string[i]=string[len-i-1];
string[len-i-1]=temp;
}
printf("변경된 문자열:%s \n", string);
return 0;
}
char temp=string[i];
string[i]=string[len-i-1];
string[len-i-1]=temp;
여기서 입력한 문자열이 abcdefgh라면 string[8]입니까 string[9]가 되는 겁니까?
, abcdefgh면은 0부터7까지문자열이 저장되고 나머지 8에는 널이 저장되는거 맞습
니까? 8이면 9개 저장 공간이 할당되는거니까..
근데 딴페이지는 char str[6]="hello";가 되는데 왜 여기서 5개면 6개 저장공간이 할
당되니까. 충분한데 뭣하러 공간을 7개나 만드나요?
제가 잘못이해 했는지 지적바랍니다.