반응형
아래 코드는 사용자의 입력을 받아 만약 대문자면 소문자로 변환시키고, 소문자면 대문자로 변환시키는 코드이다.
원래 gets 함수를 사용했지만, visual studio에서는 gets_s를 써야 한다고 한다... 그 이유는
☞ 최신 visual studio에서는 gets는 사용하지 않게 하고 gets를 오버로드한 gets_s를 사용하라고 권장합니다.
gets의 문제는 버퍼 오버플로우가 날 수 있기 때문에, 그것을 방지 하기 위해서 조금 안전하게 gets_s를 만들어서 제공하는 것 입니다.
출처: https://blockdmask.tistory.com/343 [개발자 지망생]
라고 한다.
#include<stdio.h>
#include<string.h>
int main()
{
char str[100];
printf("write down:\n");
gets_s(str);
for (int i = 0; str[i]; i++)
{
if (str[i] >= 65 && str[i] <= 90)
{
str[i] = str[i] + 32; // 대문자->소문자
}
else if (str[i] >= 97 && str[i] <= 122) // 소문자->대문자
{
str[i] = str[i] - 32;
}
}
printf("%s\n", str);
return 0;
}
(실행 결과)
반응형
소문자 abcd를 입력하면, ABCD로 변환된다.
대문자 APPLE 입력하면 소문자 apple으로 변환된다.
대소문자를 섞어쓰면?
소문자->대문자로 변환
대문자->소문자로 변환
위 코드를 응용해서 쓰길 바란다.
(문자로 입력받은 아스키코드 char타입을 연산이 가능한 int형으로 변환하는 예제 코드)
https://ansan-survivor.tistory.com/1034
반응형
'C언어 \ C++' 카테고리의 다른 글
[C언어] C언어 비트연산자 AND, OR, NOR, NOT 예제 코드 (|= , &= , ~ 사용법) (0) | 2022.01.09 |
---|---|
[C언어] c언어 입력한대로 막대 별찍기 (0) | 2021.11.16 |
[C언어] c언어 char -> int 변환 (C언어 문자열 정수 변환, 아스키코드 변환) (0) | 2021.11.15 |
[C언어] C언어 enum 사용법 (열거형 상수 선언) (0) | 2021.09.26 |
[C언어] c언어 atoi함수, atof 함수 예제 (아스키코드 정수형 실수형 변환) (0) | 2021.09.26 |