반응형

C언어 118

[C언어 소스] 구조체 비트 필드

[C언어 소스] 구조체 비트 필드 //구조체 비트 필드 #include typedef struct _Data Data; struct _Data { unsigned char married:1; //1비트 배정 unsigned char hascar:1; //1비트 배정 unsigned char hashouse:1; //1비트 배정 unsigned char age:5; //5비트 배정 }; int main(void) { Data data={0}; printf("size of Data : %d\n",sizeof(Data)); data.married = 1; data.hascar = 1; data.age = 22; printf("married:%d, hascar:%d, hashouse:%d, age:%d\n", ..

[C언어 소스] 구조체 형식으로 멤버 사용할 때 버그

[C언어 소스] 구조체 형식으로 멤버 사용할 때 버그 #include #define MAX_NAME_LEN 20 typedef struct _Student Student; struct _Student { char name[MAX_NAME_LEN+1]; int iq; }; void Study(Student stu); int main() { Student stu = {"홍길동", 100}; Study(stu); printf("main 이름:%s 아이큐:%d\n",stu.name,stu.iq); } void Study(Student stu) { printf("%s 공부하다.\n",stu.name); stu.iq++; printf("IQ:%d\n",stu.iq); } 실행 결과홍길동 공부하다. IQ:101 ma..

[C언어 소스] 구조체로 회원 형식 정의

[C언어 소스] 구조체로 회원 형식 정의 #include #include #define MAX_ID_LEN 20#define MAX_NAME_LEN 30#define MAX_ADDR_LEN 50typedef struct _Member Member;struct _Member{ char id[MAX_ID_LEN]; char name[MAX_NAME_LEN]; char addr[MAX_ADDR_LEN]; int age; int gender;};int main(){ Member member = { "" }; strcpy_s(member.id, MAX_ID_LEN, "jejutour"); strcpy_s(member.name, MAX_NAME_LEN, "장언휴"); strcpy_s(member.addr, MAX_..

[C언어 소스] 문자열 복사(strcpy_s 함수, strncpy_s 함수)

[C언어 소스] 문자열 복사(strcpy_s 함수, strncpy_s 함수) #include #include #define MAX_NAME_LEN 50 int main() { char name1[MAX_NAME_LEN+1] = "hello"; char name2[MAX_NAME_LEN+1] = ""; char name3[MAX_NAME_LEN+1] = ""; strcpy_s(name2,sizeof(name2),name1); printf("%s\n",name2); strncpy_s(name3,sizeof(name3),name1,3); printf("%s\n",name3); return 0; } 실행 결과hello hel 본문[디딤돌 C언어] 72. 문자열 복사

[C언어 소스] 부분 문자열 비교(strncmp 함수)

[C언어 소스] 부분 문자열 비교(strncmp 함수) #include #include #define MAX_NAME_LEN 50 int main() { char name1[MAX_NAME_LEN+1] = "hello"; char name2[MAX_NAME_LEN+1] = "hello world"; if(strcmp(name1,name2) == 0) { printf("%s 와 %s는 같다.\n",name1,name2); } else { printf("%s 와 %s는 다르다.\n",name1,name2); } if(strncmp(name1,name2,5) == 0) { printf("%s 와 %s의 %d개의 문자는 같다.\n",name1,name2,5); } else { printf("%s 와 %s의 %d..

[C언어 소스] 문자열 비교(strcmp 함수)

[C언어 소스] 문자열 비교(strcmp 함수) #include #include #define MAX_NAME_LEN 50 int main() { char name1[MAX_NAME_LEN+1] = "hello"; char name2[MAX_NAME_LEN+1] = "hello"; if(strcmp(name1,name2) == 0) { printf("%s 와 %s는 같다.\n",name1,name2); } else { printf("%s 와 %s는 다르다.\n",name1,name2); } return 0; } 실행 결과hello와 hello는 같다. 본문[디딤돌 C언어] 71. 문자열 비교와 strcmp함수

[C언어 소스] 비교 연산으로 문자열을 비교했을 때의 버그

[C언어 소스] 비교 연산으로 문자열을 비교했을 때의 버그 #include #include #define MAX_NAME_LEN 50 int main() { char name1[MAX_NAME_LEN+1] = "hello"; char name2[MAX_NAME_LEN+1] = "hello"; if(name1 == name2) { printf("%s와 %s는 같다.\n",name1,name2); } else { printf("%s와 %s는 다르다.\n",name1,name2); } return 0; } 실행 결과hello와 hello는 다르다. 본문[디딤돌 C언어] 71. 문자열 비교와 strcmp함수

카테고리 없음 2016.11.30

[C언어 소스]유니코드와 ASCII 코드 문자열 길이

[C언어 소스]유니코드와 ASCII 코드 문자열 길이 #include #include #include int main() { char c ='a'; wchar_t wc = L'홍'; char name[10]="홍길동"; wchar_t wname[10]=L"홍길동"; setlocale(LC_ALL,"Korean"); //로케일 설정(지역 설정) printf("c:%c wc:%lc\n",c,wc); printf("name:%s wname:%ls\n",name,wname); printf("name 길이:%d wname 길이:%d\n",strlen(name), wcslen(wname)); return 0; } 실행 결과c:a wc:홍 name:홍길동 wname:홍길동 name 길이:6 wname 길이:3 본문[..

[C언어 소스] char 형식 배열에 문자열 초기화

[C언어 소스] char 형식 배열에 문자열 초기화 #include #define MAX_NAME_LEN 50 #define MAX_ADDR_LEN 100 int main() { char name[MAX_NAME_LEN+1] = {'a','b','c'}; char addr[MAX_ADDR_LEN+1] = "제주도 제주시 애월읍 고내리"; printf("이름:%s\n",name); printf("주소:%s\n",addr); return 0; } 실행 결과이름:abc 주소:제주도 제주시 애월읍 고내리 본문[디딤돌 C언어] 69. 문자열 사용 기초

반응형