사람의 이름, 성 및 성을 결합합니다.출력 없음 문자열 결합 후 인쇄 중
INT 주()
{
int i,j,k;
char first_name[11]="Gursheesh";
char middle_name[10]="Singh";
char last_name[10]="Chawla";
char name[30];
for(i=0;first_name!='\0';i++)
{
name[i]=first_name[i];
}
name[i]=' ';
i++;
for(j=0;middle_name!='\0';j++)
{
name[i+j]=middle_name[j];
}
name[i+j]=' ';
j++;
for(k=0;last_name!='\0';k++)
{
name[i+j+k]=last_name[k];
}
name[i+j+k]='\0';
printf("%s",name);
}
이 런타임 컴파일러는 아무것도
내가 도와, 실수를 찾을 수를 보여줍니다
코드를입니다.
일부 무한 루프 또는 일부 논리 misktake가 계속됩니다.
'name'의 용량은 30 자로 제한되어 있으므로'strncpy'를 사용해야합니다. 제한을 초과 할 수 없다는 것을 안다면'strcpy' 만 사용하십시오 (드문 경우입니다). – UniversE
@UniversE 예 또는'strcpy_s' (C11 이후). 내 대답에는이 모든 기능에 대한 링크가 있습니다. – Nikita
고마워요. 나는 그런 애처로운 실수를 어떻게 찾을 수 없었는지 모르겠다. –