연산자(Operator) : 특정연산을 요구할 때 사용하는 약속기호
변수(variable) : <수학> 어떤 관계나 범위 안에서 여러가지 값으로 변할 수 있는 수
<c언어> 값을 저장할 수 있는 메모리 공간에 붙는 이름, 혹은 메모리 공간자체
int main()
{
int rabbit ;
}
int : 정수의 저장이 가능한 메모리 공간을 할당
rabbit : 메모리 공간 이름 (변경가능)
초기화 : 선언된 변수에 처음 값을 저장하는 것 ps.선언과 동시에 초기화 가능
'변수를 선언만 하고 초기화하지 않으면 쓰레기 값이 출력'
-변수 선언 규칙
1.변수는 알파벳, 숫자, 언더바( _ )로 구성
2.대소문자를 구분 ex) Num≠num
3.숫자,키워드로 시작 불가
4.이름 사이에 공백 불가
연산자(Operator) 종류 및 간략한 소개
대입연산자( = ) : 대입 연산자의 오른편에 오는 값을 왼편에 오는 변수에 저장
산술연산자(+, -, *, /, %)
+ : 덧셈, - : 뺄셈, * : 곱셈, / : 나눗셈_몫, % : 나눗셈_나머지
'함수 호출문의 인자전달 위치에 연산식이 올 수 있다.'
복합 대입연산자(+=, -=, *=, /=,등등)
증가,감소 연산자
전위증가 : ++num 선 증가 후 연산
후위증가 : num++ 선 연산 후 증가
전위감소 : --num 선 감소 후 연산
후위감소 : num-- 선 연산 후 감소
ex)
...
{
int num1=10;
int num2=10;
printf("num1 : %d \n",num1); //num1의 값 10
printf("++num1= %d \n",++num1); //num1의 값 11
printf("num1 : %d \n",num1); //num1의 값 11
printf("num2 : %d \n",num2); // num2의 값 10
printf("num2++ = %d \n",num2++); //num2의 값 10
printf("num1 : %d \n",num1); //num1의 값 11
}
전위는 식을 계산하기 전에 값 증가,감소 후 식 계산이고
후위는 식을 계산 후 값 증가,감소
후위 증가(선 연산, 후 증가)와 후위 감소(선 연산, 후 감소) 연산은 소괄호의 영향을 받지 않고, 다음 문장으로 넘어가야만 비로소 값의 증가 및 감소가 이뤄진다.
관계연산자( <, >, ==, !=, <=, >= ) : 조건 만족시 1 반환 ,불만족시 0을 반환
논리연산자( &&, ||, ! ) : AND(논리곱), OR(논리합), NOT(논리부정) 연산자
'C언어는 0이 아닌 모든 값을 참(ture)으로 간주한다.
콤마연산자( , ) : 둘 이상의 변수를 동시에 선언, 둘 이상의 문장을 한 행에 삽입하는 경우,
둘 이상의 인자를 함수로 전달할 때 인자의 구분을 목적
scanf 함수 : 10진수 정수형태의 입력을 받는 함수
'scanf 함수의 호출을 위해서는 입력된 데이터를 저장할 변수의 이름 앞에 & 연산자를 붙여야 한다.'
참고.visual studio 2015에서는 scanf 함수를 사용하면
코드 C4996 오류가 뜬다.
'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
뭐 대충 해석하자면 scanf 함수가 안전하지 않으니 scanf_s함수를 써라 이말이다.
scanf함수는 공백을 기준으로 데이터를 구분한다.
C언어 Keyword _간단한 설명 추가 예정
auto
_Bool
break
case
char
_Complex
const
continue
default
do
double
else
enum
extern
float
for
goto
if
_Imginary
return
restrict
struct
switch
typedef
union
unsigned
void
volatile
while
'IT > Programming' 카테고리의 다른 글
IP Header Checksum 구하기 (0) | 2016.04.19 |
---|---|
[C언어] 비트연산 문제 (0) | 2015.09.23 |
[C언어] 03.데이터 표현방식 (0) | 2015.09.23 |
[C언어] scanf 함수 활용 문제 (0) | 2015.09.21 |
[C언어] 01.기초요약 (0) | 2015.09.21 |