C 언어
이 튜토리얼에서는 예제를 통해 C 프로그래밍의 다양한 연산자에 대해 학습합니다.
연산자는 값이나 변수에 대해 연산을 수행하는 기호입니다. 예: +는 덧셈을 수행하는 연산자입니다.
C에는 다양한 연산을 수행하는 광범위한 연산자가 있습니다.
산술 연산자는 수치(상수와 변수)에 대해 덧셈, 뺄셈, 곱셈, 나눗셈 등 수학적 연산을 수행합니다.
| 연산자 | 연산자 의미 |
|---|---|
| + | 덧셈 또는 단항 플러스 |
| - | 뺄셈 또는 단항 마이너스 |
| * | 곱셈 |
| / | 나눗셈 |
| % | 나눗셈 후 나머지(모듈로 연산) |
// 산술 연산자 작동
#include <stdio.h>
int main() {
int a = 9, b = 4, c;
c = a + b;
printf("a+b = %d \n", c);
c = a - b;
printf("a-b = %d \n", c);
c = a * b;
printf("a*b = %d \n", c);
c = a / b;
printf("a/b = %d \n", c);
c = a % b;
printf("a를 b로 나눈 나머지 = %d \n", c);
return 0;
}
출력
a+b = 13 a-b = 5 a*b = 36 a/b = 2 a를 b로 나눈 나머지=1
+, -, * 연산자는 예상대로 덧셈, 뺄셈, 곱셈을 계산합니다.
일반 계산에서 9/4 = 2.25지만 프로그램 출력엔 2입니다.
두 변수 a와 b가 모두 정수라서 결과도 정수입니다. 컴파일러는 소수점 이하를 버리고 2.25 대신 2를 보여줍니다.
모듈로 연산자 %는 나머지를 계산합니다. a=9를 b=4로 나누면 나머지는 1입니다. % 연산자는 정수에서만 사용 가능합니다.
a = 5.0, b = 2.0, c = 5, d = 2라고 가정하면 C에서:
// 피연산자 중 하나가 부동소수점 수인 경우 a/b = 2.5 a/d = 2.5 c/b = 2.5 // 두 피연산자가 모두 정수인 경우 c/d = 2
C에는 피연산자(상수나 변수) 값을 1씩 변경하는 증감 연산자 ++와 --가 있습니다.
++은 값을 1 증가시키고 --는 1 감소시킵니다. 이 두 연산자는 단항 연산자로 단일 피연산자만 다룹니다.
// 증감 연산자 작동
#include <stdio.h>
int main() {
int a = 10, b = 100;
float c = 10.5, d = 100.5;
printf("++a = %d \n", ++a);
printf("--b = %d \n", --b);
printf("++c = %f \n", ++c);
printf("--d = %f \n", --d);
return 0;
}
출력
++a = 11 --b = 99 ++c = 11.500000 --d = 99.500000
여기서 ++와 --는 접두사로 사용되었습니다. 이 연산자들은 접미사처럼 a++, a--로도 쓸 수 있습니다. 접미사 사용 시 작동 방식은 별도 페이지를 참조하세요.
대입 연산자는 변수에 값을 할당하는 데 쓰입니다. 가장 흔한 대입 연산자는 =입니다.
| 연산자 | 예제 | 동일함 |
|---|---|---|
| = | a = b | a = b |
| += | a += b | a = a+b |
| -= | a -= b | a = a-b |
| *= | a *= b | a = a*b |
| /= | a /= b | a = a/b |
| %= | a %= b | a = a%b |
// 대입 연산자 작동
#include <stdio.h>
int main() {
int a = 5, c;
c = a; // c는 5
printf("c = %d\n", c);
c += a; // c는 10
printf("c = %d\n", c);
c -= a; // c는 5
printf("c = %d\n", c);
c *= a; // c는 25
printf("c = %d\n", c);
c /= a; // c는 5
printf("c = %d\n", c);
c %= a; // c = 0
printf("c = %d\n", c);
return 0;
}
출력
c = 5 c = 10 c = 5 c = 25 c = 5 c = 0
관계 연산자는 두 피연산자 간의 관계를 검사합니다. 관계가 참이면 1, 거짓이면 0을 반환합니다.
관계 연산자는 의사결정과 루프에서 사용됩니다.
| 연산자 | 의미 | 예제 |
|---|---|---|
| == | 같음 | 5 == 3은 0으로 평가 |
| > | 보다 큼 | 5 > 3은 1로 평가 |
| < | 보다 작음 | 5 < 3은 0으로 평가 |
| != | 같지 않음 | 5 != 3은 1로 평가 |
| >= | 보다 크거나 같음 | 5 >= 3은 1로 평가 |
| <= | 보다 작거나 같음 | 5 <= 3은 0으로 평가 |
// 관계 연산자 작동
#include <stdio.h>
int main() {
int a = 5, b = 5, c = 10;
printf("%d == %d is %d \n", a, b, a == b);
printf("%d == %d is %d \n", a, c, a == c);
printf("%d > %d is %d \n", a, b, a > b);
printf("%d > %d is %d \n", a, c, a > c);
printf("%d < %d is %d \n", a, b, a < b);
printf("%d < %d is %d \n", a, c, a < c);
printf("%d != %d is %d \n", a, b, a != b);
printf("%d != %d is %d \n", a, c, a != c);
printf("%d >= %d is %d \n", a, b, a >= b);
printf("%d >= %d is %d \n", a, c, a >= c);
printf("%d <= %d is %d \n", a, b, a <= b);
printf("%d <= %d is %d \n", a, c, a <= c);
return 0;
}
출력
5 == 5 is 1 5 == 10 is 0 5 > 5 is 0 5 > 10 is 0 5 < 5 is 0 5 < 10 is 1 5 != 5 is 0 5 != 10 is 1 5 >= 5 is 1 5 >= 10 is 0 5 <= 5 is 1 5 <= 10 is 1
논리 연산자를 포함한 표현식은 표현식이 참인지 거짓인지에 따라 0 또는 1을 반환합니다. 논리 연산자는 C 프로그래밍에서 의사결정에 흔히 쓰입니다.
| 연산자 | 의미 | 예제 |
|---|---|---|
| && | 논리 AND. 모든 피연산자가 참일 때만 참 | c = 5, d = 2라면 ((c==5) && (d>5))는 0 |
| || | 논리 OR. 한 피연산자라도 참이면 참 | c = 5, d = 2라면 ((c==5) || (d>5))는 1 |
| ! | 논리 NOT. 피연산자가 0일 때만 참 | c = 5라면 !(c==5)는 0 |
// 논리 연산자 작동
#include <stdio.h>
int main() {
int a = 5, b = 5, c = 10, result;
result = (a == b) && (c > b);
printf("(a == b) && (c > b) is %d \n", result);
result = (a == b) && (c < b);
printf("(a == b) && (c < b) is %d \n", result);
result = (a == b) || (c < b);
printf("(a == b) || (c < b) is %d \n", result);
result = (a != b) || (c < b);
printf("(a != b) || (c < b) is %d \n", result);
result = !(a != b);
printf("!(a != b) is %d \n", result);
result = !(a == b);
printf("!(a == b) is %d \n", result);
return 0;
}
출력
(a == b) && (c > b) is 1 (a == b) && (c < b) is 0 (a == b) || (c < b) is 1 (a != b) || (c < b) is 0 !(a != b) is 1 !(a == b) is 0
논리 연산자 프로그램 설명
(a == b) && (c > 5)는 두 피연산자 (a == b)와 (c > b)가 모두 1(참)이므로 1로 평가.(a == b) && (c < b)는 피연산자 (c < b)가 0(거짓)이므로 0으로 평가.(a == b) || (c < b)는 (a = b)가 1(참)이므로 1로 평가.(a != b) || (c < b)는 두 피연산자 (a != b)와 (c < b)가 모두 0(거짓)이므로 0으로 평가.!(a != b)는 피연산자 (a != b)가 0(거짓)이므로 1(참)로 평가.!(a == b)는 (a == b)가 1(참)이므로 0(거짓)으로 평가.계산 중 덧셈, 뺄셈, 곱셈, 나눗셈 같은 수학 연산은 비트 레벨로 변환되어 처리 속도를 높이고 전력을 절약합니다.
비트 연산자는 C에서 비트 수준 연산을 수행하는 데 사용됩니다.
| 연산자 | 의미 |
|---|---|
| & | 비트 AND |
| | | 비트 OR |
| ^ | 비트 배타적 OR |
| ~ | 비트 보수 |
| << | 왼쪽 시프트 |
| >> | 오른쪽 시프트 |
C 비트 연산자에서 더 자세히 알아보세요.
콤마 연산자는 관련 표현식을 연결하는 데 사용됩니다. 예:
int a, c = 5, d;
sizeof 연산자sizeof는 데이터(상수, 변수, 배열, 구조체 등)의 크기를 반환하는 단항 연산자입니다.
#include <stdio.h>
int main() {
int a;
float b;
double c;
char d;
printf("Size of int=%lu bytes\n", sizeof(a));
printf("Size of float=%lu bytes\n", sizeof(b));
printf("Size of double=%lu bytes\n", sizeof(c));
printf("Size of char=%lu byte\n", sizeof(d));
return 0;
}
출력
Size of int = 4 bytes Size of float = 4 bytes Size of double = 8 bytes Size of char = 1 byte
삼항 연산자 ?:, 참조 연산자 &, 역참조 연산자 *, 멤버 선택 연산자 -> 등은 이후 튜토리얼에서 다룹니다.
C 언어
이것은 매우 간단한 선반 CNC 프로그래밍 예제입니다. 초보자 또는 입문자 수준의 CNC 프로그래머를 위한 예제입니다. 단순한 CNC 윤곽 프로그래밍입니다. 이 프로그래밍 예제에 사용된 G코드는 Fanuc CNC 제어 기준입니다. 선반 CNC 프로그래밍 예제 Fanuc G코드 CNC 프로그램 N10 G90 S500 M03 N20 G00 X25 Z5 N30 G01 G95 Z0 F1 N40 G01 Z-7.5 F0.2 N50 G01 X60 Z-35 N60 G01 Z-50 N70 G00 X62 N80 G00 X80 Z20 N90 M30
Haas 밀링 매뉴얼CNC 머시니스트는 Haas 웹사이트에서 Haas 밀링 매뉴얼을 무료로 다운로드할 수 있습니다.Haas 밀링 매뉴얼에는 전체 CNC 운영 및 프로그래밍 세부 사항이 포함되어 있습니다.CNC 머시니스트는 Haas 선반 매뉴얼도 다운로드할 수 있습니다: Haas CNC 선반 매뉴얼 무료 다운로드Haas 밀링 매뉴얼 – 운영자 및 프로그래밍Haas 밀링 매뉴얼 다운로드Haas 밀링 매뉴얼 Haas 웹사이트 (PDF).Haas 밀링 매뉴얼 목차안전기계 안전모범 사례경고 데칼소개기계 개요컨트롤 설명옵션 설명운영일반 운영프