728x90
반응형

토글이란 하나의 설정 값으로부터 다른 값으로 전환하는 것이다.

토글이라는 용어는 오직 두가지 밖에 없는 상황에서, 스위치를 한번 누르면 한 값이 되고,

다시 한번 누르면 다른 값으로 변하는 것을 의미한다.

 

토글 스위치는 두가지 상태만을 가지고 있는 스위치이다.

예를 들어, 한 번 누르면 불이 들어오고 한번 누르면 불이 나가는 스위치가 토글 스위치이다.

컴퓨터 키보드에서, Caps Lock 키도 일종의 토글 스위치인데,

왜냐하면 그 스위치를 누르는 것은 현재의 설정 값이 무엇이냐에 따라 두가지 의미로 동작할 수 있기 때문이다.

만약 Caps Lock이 이미 설정된 상태라면, 그 키를 눌렀을 때 Caps Lock이 해제된다.

그러나 반대로 Caps Lock이 해제된 상태에서 그 키를 눌렀다면, Caps Lock이 설정된다.

 

토글 스위치는 소프트웨어에도 존재하는데,

예를 들어 대화상자 내에 있는 체크박스도 일종의 토글 스위치라고 할 수 있다.

 

Duffle Coat // Toggle

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdbool.h>

int main(void)
{
	int result;
	// bool result;

	while (1)
	{
		printf("0 or 1 : ");
		scanf_s("%d", &result);

		printf("%s\n", result ? "true" : "false");
	}

	return 0;
}

 

변수 토글 방법

 

1. bool 타입

bool toggle;
...
toggle = !toggle;

 

2. 1과 -1의 토글

int toggle = 1;
...
toggle = -toggle;

 

3. 0과 1의 토글

int toggle = 1;
...
if (toggle == 1)
{
	toggle = 0;
}

else
{
	toggle = 1;
}

//
toggle = (toggle == 1) ? 0 : 1;

//
toggle = (toggle + 1) % 2;

//
toggle = (toggle +1) & 0x 01;

//
toggle = 1 - toggle;

// XOR
toggle ^= 1;

 

 

728x90
반응형

'Data Structure & Algorithm' 카테고리의 다른 글

Queue_Buffer  (0) 2024.02.21
Coin  (0) 2022.11.21
About Call-Back Function  (0) 2022.11.18
Sort Score  (0) 2022.11.18
Flower, Chicken, Cards  (0) 2022.11.14

+ Recent posts