char *ptr = (char*)malloc(sizeof(char) * 10); <div><br></div> <div>으로 10개짜리 char형 어레이를 선언했습니다.</div> <div><br></div> <div>이 어레이 안에 외부 파일을 불러와서 12...34.5 라는 10개짜리 문자열을 입력했습니다. 여기까지는 정상적으로 동작합니다.</div> <div><br></div> <div>이를 for문을 통해</div> <div><br></div> <div>for (int i = 0; i < 10; i++)</div> <div>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if (ptr[i] == '.') int.value = 0;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>else int.value = ptr[i];</div> <div>}</div> <div><br></div> <div>이런식으로 구현하였는데, 문제는 ptr[i]가 char형으론 1이지만, int형 변수(int.value)에 입력할때는 다른 값으로 입력된다는 것입니다.</div> <div><br></div> <div>int.value라는 변수는 char형으로 수정할수 없고, printf"%c", ptr[i]);를 통해서 확인해봐도 ptr안에는 제대로 입력되어있는게 맞습니다.</div> <div><br></div> <div>이러한 경우 만약 char형으로 5이면 저 int형 변수안에 5를 집어넣는 방법이 있을까요?</div> <div><br></div> <div>구글링 몇시간째 해도 찾을수가 없어 질문드립니다 ㅠㅠ (int*)를 통한 강제형변환은 소용이 없는것 같습니다.</div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.