일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- #다차원포인터
- html multimedia
- relative path
- git flow
- docker example
- html5 new tag
- #1차원배열
- #JAVASCRIPT
- #2차원배열
- #성적관리프로그램
- 하이퍼레저패브릭
- #android activity
- #3차원배열
- html charset
- border-box
- #CallByAddress
- html object
- hyperledger transaction
- #bubbleSort
- mac terminal command
- 토큰경제
- #C++ 연산자함수오버로딩
- html plug-in
- html video
- #자바상속#자바이즈어#is~a
- html youtube
- #C++ has~a
- html id
- #binary
- html code
- Today
- Total
목록C (47)
A sentimental robot
bubble sort #include void sort(int *v, int n){ int i,j; int tmp; int flag; for(i = 0 ; i< n-1 ; i++){ flag = 0; for(j = 0 ; j v[j+1]){ tmp = v[j]; v[j] = v[j+1]; v[j+1] = tmp; flag = 1; } } if(flag == 0) break; // sorting이 끝나면 for문 나오게 함 } } void main() { int x[10] = {75,27, 49,10,93,23,76,11,53,77}; int j; for(j =0 ; j< 10 ; j++ ){ printf(" %d",x[j]); } puts("\n"); sort(x,10); for(j = 0 ; j 처음부..
#include #include void main() { char buf[100]; char name[100]; int i; for(i=1 ; i
#include #include void main() { int x; char buf[100]; strcpy_s(buf,"83"); // x = atoi(buf); > buf에 있던 문자 '83'을 int형으로 변환해서 x에 넣기 x = 0; x = buf[0]-48; // 56(문자'8'의 아스키코드)-48=8 x = x*10; // 80 x = x+buf[1]-48; // 80+51-48 = 83 printf("%s\n",buf); printf("%d\n",x); } #include #include int myAtoi(char s[]) { int i; int n; int sign; for(i = 0 ; s[i] == ' ' || s[i] == '\t' ; i++); // 숫자앞에 공백 예외처리 sig..
#include typedef int Money; void main() { Money x,y; x = 10; y = 20; } enum : 나열 #include typedef enum{ Ri, Di, El }Day; //declaration enum{ jo, euni, bee } x, y; //definition void main() { Day a; Day b; Day c; a = Ri; b = Di; c = El; printf("%d %d %d\n", a,b,c); x = jo; y = bee; printf("%d %d\n",x,y); } union #include typedef union{ int money; double gold; }Salary; void main() { Salary x; Salar..
#include #pragma warning(disable:4996); void write(char *s) { printf("%s\n",s); } int add(int x, int y){ return x+y ;} int sub(int x, int y){ return x-y ;} int mul(int x, int y){ return x*y ;} int div(int x, int y){ return x/y ;} void main() { void (*g)(char *); int (*f[4])(int,int); int x; int y; f[0]=add; f[1]=sub; f[2]=mul; f[3]=div; g = write; (*g)("hello"); while(1){ printf("What do you wan..
기본적으로 strdup와 strcpy는 같은 기능을 가지고 있지만, 내부적인 기능이 다릅니다. strdup는 동적할당하는 heap영역에 새로 메모리(문자열)를 잡습니다. 그래서 최초에 strdup를 사용하여 문자열을 복사하고, 다시 수정할 시에는 free를 선언해야 합니다. 안그러면 잡았던 메모리가 garbage가 됩니다. strcpy를 사용 시, 복사할 문자열이 복사될 문자열 공간보다 크면 문자열이 짤리는 경우가 발생합니다. 그런 단점을 보완해 주는 함수가 strdup입니다. strdup는 문자열공간 또한 동적할당을 해주기 때문에 앞서 말했던strcpy의 단점을 보완할 수 있습니다. #include #include void main() { char *name[5]; // 포인터 배열, 5개의 배열 안에..
#include #include #include char * my_strdup(char *s) { int n; char *p; n = strlen(s)+1; // includes null character p = (char*)malloc(n); strcpy(p,s); return p; } void main() { char *p; p = my_strdup("HELLO"); printf("%s\n", p); free(p); p = my_strdup("Hi"); printf("%s\n", p); } #include #include #include void my_strdup(char **t, char *s) { int n; char *p; n = strlen(s)+1; p = (char *)malloc(n)..