책 내용은 좋습니다.
제목그대로 문법을 갓띤 분께 추천드립니다.
심화라고 까진 못합니다.
허나 예제소스가 누락된것도 있는듯하고
해결된소스임에도 불구하고 소스가 에러나는 것도 있습니다.
ex) ! = 연산자에 공백이들어가 에러나는것 등.
책에나와있는 소스와 틀린것도 있네요.
일본분 저자가 작성한 일본스타일의 변수명이 있다고할까..
잘못된 것을 바로잡는 반복 학습법으로 문법책만으로는 부족한 10%를 채운다!
문법책 한 권은 뗐는데 막상 프로그램 만들려니 가물가물 실수 투성이?
1장 자, 슬슬 나만의 코드를 작성해 보자! C 프로그램의 확장자란? main() 함수란? EOF가 뭐지? : 파괴된 함수 블록 망가진 케익은 먹지 않는다! : 들여쓰기 공사 중이라면 표지판을 세우자 : 주석문 흔히 있는 주석문 착각 : 주석문 중첩 초급 : 끝맺음이 없는 문장을 만들지 말자 함수를 사용한다면 라이브러리 헤더 파일을 인클루드하자 include의 <>과 ""는 어떻게 다른 거야? 올바른 명령행 인수를 얻읍시다 올바른 방법으로 프로그램을 종료하자 printf() 함수를 잘 다루자 2장 자료형, 키워드, 변수 다루기에 익숙해지자 자료형과 키워드는 모두 소문자로 쓰자 변수명의 규칙은 무엇인가? 변수는 반드시 초기화하자 변수의 선언이나 초기화문을 정리하자 C 프로그램에서 수치 값을 기술하려면 어떻게 해야 되는가? char형 배열을 올바르게 초기화하려면 char형 배열을 긴 문자열로 초기화하려면 변수가 숨어버렸다! 왜 변수를 사용할 수 없는가? 문자와 문자열을 올바르게 구분하여 사용하자 3장 연산자와 조건 처리에 익숙해지자 조건이 평가되는 순서를 생각하라 프로그램이 왜 이상해졌을까? 왜 변수를 증가시킬 수 없는가? 좌변 값이 될 수 없는 식이 있는가? 쓸모 있는 if문을 작성하자 불명확한 if와 else의 대응을 조심하자 이상하다? if-else문이 작동하지 않는 이상한 조건 왜 항상 동일한 값이 될까? 장황하게 표현된 if-else문(1) : switch문을 사용하자 장황하게 표현된 if-else문(2) : 조건 연산자를 사용한다 switch/case의 포인트(1) : 정수 상수 switch/case의 포인트(2) : break문 4장 루프 제어에 익숙해지자 초급 : 프로그램에 상수를 넣어두지 말자 : #define 왜 1부터 시작하면 안 되는 걸까? 루프에서는 절대로 방어한다 : 경계 초월 어떻게 하지? 루프가 멈추지 않네 : 종료 조건이 없다 루프가 이상하다! : 제어 변수 초기화를 잊었다 무한루프를 활용하자 : 루프 탈출 도움이 안 되는 지연 루틴 while 루프에서 자주 저지르는 실수 : 제어 변수 갱신 까먹기 쉽게 빠져나오지 못하는 루프 : 중첩 루프 goto문의 사용은 이제 그만 : 구조적 프로그래밍 5장 배열, 문자, 문자열 다루기에 익숙해지자(포인터 : 첫 번째) 문자열의 길이를 구하는 포인트 : 널 문자 포인터 조작의 포인트(1) : 포인터의 초기화 포인터 조작의 포인트(2) : 포인터가 참조하는 곳의 초기화 문자열을 연결하는 포인트(1) : 널 문자 문자열을 연결하는 포인트(2) : 충분한 사이즈 문자열을 연결하는 포인트(3) : strncat() 함수 문자열을 복사하는 포인트(1) : 널 문자 문자열을 복사하는 포인트(2) : strncpy() 함수 문자열을 비교하는 포인트 : 널 문자 이상하다. 입출력을 재지정할 수 없다 다차원 배열에서 자주 하는 실수 : 불명확한 초기화 포인터 조작의 포인트(3) : 값과 주소의 차이 포인터 조작의 포인트(4) : 문자열 정렬 6장 정수, 실수, 비트 다루기에 익숙해지자(포인터 : 두 번째) printf() 함수가 이상하다! : 연산자의 우측 결합 포인터 조작의 포인트(5) : 주소 다루기 다른 자료형 간의 대입을 조심하자 : 데이터 손실 명시적 형변환을 조심하자 : 경고가 없어진다 가감승제 연산자의 우선순위에 주의하자 지수 표기법을 사용하려면? 비트 연산자를 사용했더니 정수의 부호가 바뀌었다 비트 다루기에 익숙해지자 C의 정수형과 컴퓨터에서 숫자를 다루는 구조를 이해하자 16비트 환경과 32비트 환경 모두의 int형을 지원하고 싶다 : 이식성 문제 7장 함수 다루기에 익숙해지자(포인터 : 세 번째) 함수 정의의 포인트(1) : 변수의 수명을 이해하자 함수 정의의 포인트(2) : 자료형을 지정하자 함수 정의의 포인트(3) : 함수 원형을 선언하자 함수 정의의 포인트(4) : 외부 선언을 사용하자 함수 정의의 포인트(5) : 인수와 반환 값을 값에 의한 전달로 처리하기 함수 정의의 포인트(6) : 인수와 반환 값의 참조(포인터) 전달 포인터 조작의 포인트(6) : 실체가 없는 반환 값 포인터 이상하다! 재귀 함수를 올바르게 종료할 수 없다 : 재귀 함수의 종료 거듭제곱을 구하는 함수의 계산이 이상하다 : 재귀 함수의 초기화 함수 정의의 포인트(7) : 공통 루틴 다루기 8장 구조체 다루기에 익숙해지자(포인터 : 네 번째) 구조체를 능숙하게 사용하자 구조체 변수를 잘 선언하자 구조체명은 자료형으로 사용할 수 없는가? 포인터 조작의 포인트(7) : char형 배열과 char *형 변수 포인터 조작의 포인트(8) : 왜 갑자기 화살표 연산자를 사용할 수 없지? 구조체의 비트 필드를 활용하자 불완전한 비트 테스터 : 열거형의 이름 붙은 상수를 사용한다. 9장 동적 메모리 할당에 익숙해지자(포인터 : 다섯 번째) 포인터 조작의 포인트(9) : NULL 포인터 다루기 포인터 조작의 포인트(10) : void *형 포인터의 형변환 초급 : 포인터 조작의 포인트(11) : 포인터의 보폭 차이를 이해한다 포인터 조작의 포인트(12) : void *형의 포인터의 능숙한 사용법 포인터 조작의 포인트(13) : 포인터가 참조하는 곳의 초기화 메모리 영역을 복사하려면? 포인터 조작의 포인트(14) : NULL 포인터 다루기 포인터 조작의 포인트(15) : 함수 포인터 동적 연결 리스트를 만들려면? 10장 파일 다루기에 익숙해지자(포인터 : 여섯 번째) 포인터 조작의 포인트(16) : NULL 포인터 다루기(3) 환경에 의존적인 함수는 사용하지 말자 : 파일 크기 fgets() 함수의 동작이 이상하다 왜 복사한 파일의 크기가 다르지? : 크기 지정 이상하다! 맨 마지막 줄이 잘 출력되지 않는다 : 자주 있는 문제 포인터 조작의 포인트(17) : 포인터를 파일로 저장해서는 안 된다 가변 길이 레코드를 임의접근 하려면?
자료명 | 등록일 | 다운로드 |
---|---|---|
예제소스 | 2016-04-06 | 다운로드 |