목록C (3)
이쁜왕자 만쉐~~
C 프로그래밍을 하다보면,, 새로운 기능을 추가하기 위해서,, 기존의 함수를 변경해야 할 일이 발생한다.. 하지만,, 반드시 파라미터를 추가해야 하는 경우가 발생하면,, 조금 골치 아파 진다.. 예를 들어 int foo (int a) 라는 함수가 있다고 하자,, 게다가 이 함수는 수도 없이 많은 곳에서 호출되어 사용된다고 가정하자.. 그러기에,, foo() 함수의 파라미터을 함부로 변경 하기에는 무리가 있다.. 이런 상황에서 foo() 함수와 거의 유사한 기능을 하는 또 다른 함수를 작성해야 한다.. 많은 초보들이 int foo (int a) 를 copy & paste 해서 int foo2 (int a) 를 만들어 쓴다는 것이다.. 이거 무지무지 좋지 않은 코딩 방법이다.. 첫번째로 소스코드가 그만큼 길..
C 언어에서 % 는 모듈로 연산이며,, 일반적으로 자연수 나눗셈의 나머지 값을 구하는 목적으로 사용된다.. 문제는 이게 음수에 적용되면 아주 골때린 문제를 야기한다.. int a = 12; printf ("a = %d , a/10 = %d , a%10 = %d\n", a, a/10, a%10); 위와 같은 코드가 있다고 하자.. 이는 별 문제 없이.. 다음과 같은 결과를 낸다.. a = 12, a/10 = 1, a%10 = 2 만약 a = 12 가 아니라 음수인 -12 이면 어떤 출력을 내는지 추측해 보자.. 결과는 다음과 같다.. int a = -12; printf ("a = %d , a/10 = %d , a%10 = %d\n", a, a/10, a%10); a = -12 , a/10 = -1 , a%..
다음과 같은 조건을 만족하는 printf format 을 만드시오.1. 출력하고자 하는 데이터는 string 이다. 2. string 이 10자 보다 길면, 앞에서 10자까지 짜른다. 3. string 이 10자 보다 짧으면, 오른쪽에 공백을 채워 10자를 만든다. 4. 별다른 string 연산 없이 printf format 만으로 해결하라.입력 "abcde" 출력 [abcde_____] (괄호는 공백를 표현하기 위함, 언더바는 공백)입력 "abcdefghijklmn" 출력 [abcdefghij]이거 정답은 찾긴 찾았는데, 이런식으로 printf 포맷팅을 해보긴 처음이군요. 한번 맞춰 보세요. - 이쁜왕자 - - Valken the SEXy THief~~ ^_* -