C (17) 썸네일형 리스트형 [C] visual studio gets( ) error Visual studio 에서 buffer overflow 를 방지하기 위해 gets() 사용이 불가하다. 사용하고 싶다면 Project 우클릭 후 속성(properties) 의 옵션을 변경하자. 속성(properties) - 구성 속성(Configuration properties) - C/C++ - 고급(advanced) - compile option - change Compile As value to Compile as C Code (/TC) stackoverflow.com/questions/32283650/gets-function-is-not-available-in-visual-studio-2015-community [C] Error "const char *" 형식의 값을 사용하여 "char *" 형식의 엔터티를 초기화할 수 없습니다. visual studio 2017 version Error "const char *" 형식의 값을 사용하여 "char *" 형식의 엔터티를 초기화할 수 없습니다. 속성에서 준수모드를 '아니오'로 바꿔주면 된다. 출처 shjz.tistory.com/49 [Error, VS] "const char *" 형식의 값을 사용하여 "char *" 형식의 엔터티를 초기화할 수 없습니다. 1 char* window_name = "Threshold Demo"; cs 위와 같은 코드가 비주얼 스튜디오 2015에서는 잘 되는데 2017부터는 오류가 발생한다. 해결책은 1. 아래와 같이 const를 붙이거나 1 const char* window_name .. shjz.tistory.com [열혈 C] 6.1 printf 특수문자 \n 특수문자 , 이스케이프 시퀀스(escape sequence) ex) \n : 개 행(new line) \t : 수평 탭 \' : 작은 따옴표 출력 \\ : 역슬래쉬 출력 %x(16진수), %o(8진수), %u : 음의 정수 출력 x only 0 & + [열혈 C] 5.4 형 변환 연산자(type casting operator) 형 변환 연산자(type casting operator) # include int main(void) { int num1 = 3, num2 = 4; double num = num1 / num2; double numm = (double)num1 / num2; // (double) : 형 변환 연산자 printf("%f %f", num, numm); } [열혈 C] 5.3 리터럴(literal)상수, 심볼릭(symbolic)상수 : const 리터럴(literal)상수 : 변경이 불가능한 데이터. # include int main(void) { int num = 30 + 40; // 30 , 40 은 literal 상수 return 0; } 5처럼 int 형으로 표현가능한 정수형 상수는 int형 메모리 공간에, 7.5처럼 double 형으로 표현가능한 실수형 상수는 double형 메모리 공간에 저장된다. 심볼릭(symbolic) 상수 : const 상수 이름을 지니는 상수 # include int main(void) { const int MAX = 100; // MAX는 상수! 값 변경 불가 return 0; } [열혈 C] 5.2 문자 %c %d ASCII 코드 # include int main(void) { char ch1 = 'A'; int num1 = 65; printf("%c %c\n", ch1, num1); // A A 출력 printf("%d %d\n", ch1, num1); // 65 65 출력 return 0; } char 문자는 문자(%c), 숫자(%d) 출력가능 정수도 문자, 숫자 출력가능 [열혈 C] 5.1 자료형 int, double, unsigned # include int main(void) { int num = 3; int num2 = 5; int sz1 = sizeof num; //sizeof 에 괄호를 써도되고 안써도 되지만 써주자 int sz2 = sizeof(num2); printf("%d %d ", sz1, sz2); return 0; } 연산자 sizeof 로 자료형의 바이트 수를 확인할 수 있다. 정수 : int 실수 : double (과거엔 float) int 가 다른 자료형의 연산속도에 비해서 동일하거나 더 빠르다. int 보다 작은 크기의 데이터는 int로 바뀌어서(=형변환) 연산된다. double이 float보다 정밀도(오차가 발생하지 않는 소수점 이하의 자릿수)가 높으면서 long double 보다 부담이 덜 된다. unsi.. [열혈 C] 4.3 비트 연산자 & 연산자 : 비트단위 AND 두 개의 비트가 모두 1일 때 1을 반환한다. 0 & 0 = 0 1 & 0 = 0 1 & 1 = 1 ^ 연산자 : 비트단위 XOR 두 개의 비트가 다를 경우 1을 반환한다. 0^0 : 0 0^1 : 1 | 연산자 : 비트단위 OR 둘 중 하나라도 1이면 1을 반환한다. 0|0 : 0 0|1 : 1 1|1 : 1 ~ 연산자(보수연산) : 비트단위 NOT 비트를 0 과 1 사이 반전시킨다. 부호도 반전시킨다. # include int main(void) { int a = -5; int b; b = ~a+1; //a의 보수 구하기 printf("%d", b); //b = 5 return 0; } ) 연산자 : 비트의 왼쪽(오른쪽) 이동(shift) 8 이전 1 2 3 다음