여기에 문자열 값 21을 저장하는 char 유형 변수가 있습니다. 정수 변수 21에 21을 할당하고 싶습니다. 다음 일을하지만 인쇄 -12.why 인쇄 -12 및 내 int 변수에 21 얻을 수 있습니까?char 변수에서 숫자 문자열을 가져 와서 정수 변수에 다시 할당하십시오.
#include<stdio.h>
int main(){
char character = "21";
int x = (int)character - '0';
printf("%d",x);
}
'char character = "21";'을 넣는 것은 유효하지 않은 코드입니다. 데이터는 char * [char] [21];' –
'과 같은'char' 배열에 할당되어야하는 문자열 리터럴 *입니다. 또한'char * character = "21";'이 유효한 대안입니다. – byxor
'int x = (int) character - '0';'이 코드는 작동하지만,'char character = '7';' –