여기 C에서 약간 새로운 것이지만 이것은 내가 작업하고있는 것입니다.C 함수 매개 변수와 참조에서 문자열 수정
void do_something(char* str){
char *new = str[0]+1;
printf("%s%s\n", *str, new);
}
int main(){
char input[2];
printf("Enter a two character string: \n");
scanf("%s", input);
do_something(&input);
}
는 여기에 내가 간접 참조 입력 매개 변수 str
를 인쇄하려면, 다음 첫 번째 문자가 하나씩 증가 매개 변수의 수정 된 버전이 사용 do_something()
에서 기본적으로 do_something()
do_something("aa")
.
.
.
aaba
에 대한 내 예상 출력입니다 아스키.
내 main()
함수의 내부 함수에 올바른 입력을 전달하는지 확실하지 않습니다.
도움을 주시면 감사하겠습니다.
당신은 필요를 C 문자열은 NUL로 끝나는 문자 배열임을 이해해야합니다. 'new'는 C 문자열이 아닙니다. 그리고 둘 다'str'입니다. 사실,'input'도 유효한 C 문자열이 아닙니다. 왜냐하면 2 개의 문자열을 저장하기 위해 3 개의'chars' 배열이 필요하기 때문입니다. – kaylum