게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
C언어 형변환에 대해 질문드립니다.
게시물ID : programmer_11097짧은주소 복사하기
작성자 : 닭이너무좋아
추천 : 0
조회수 : 641회
댓글수 : 5개
등록시간 : 2015/06/09 22:51:26
옵션
  • 본인삭제금지
char *ptr = (char*)malloc(sizeof(char) * 10);

으로 10개짜리 char형 어레이를 선언했습니다.

이 어레이 안에 외부 파일을 불러와서 12...34.5 라는 10개짜리 문자열을 입력했습니다. 여기까지는 정상적으로 동작합니다.

이를 for문을 통해

for (int i = 0; i < 10; i++)
{
if (ptr[i] == '.') int.value = 0;
else int.value = ptr[i];
}

이런식으로 구현하였는데, 문제는 ptr[i]가 char형으론 1이지만, int형 변수(int.value)에 입력할때는 다른 값으로 입력된다는 것입니다.

int.value라는 변수는 char형으로 수정할수 없고, printf"%c", ptr[i]);를 통해서 확인해봐도 ptr안에는 제대로 입력되어있는게 맞습니다.

이러한 경우 만약 char형으로 5이면 저 int형 변수안에 5를 집어넣는 방법이 있을까요?

구글링 몇시간째 해도 찾을수가 없어 질문드립니다 ㅠㅠ (int*)를 통한 강제형변환은 소용이 없는것 같습니다.
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호