More actions
imported>박인서 No edit summary |
imported>박인서 No edit summary |
||
| Line 121: | Line 121: | ||
return -1; | return -1; | ||
} | } | ||
** trim : ~~꺼억~~ | ** trim : ~~꺼억~~ 두가지 종류가 있다. | ||
** ltrem : 문자가 나오기 전까지의 공백을 앞으로 땡김 | |||
** rtrem : 문자열이 다나온 뒤의 공백을 없애고 NULL을 앞으로 땡김 | |||
추가바람 | 추가바람 | ||
---- | ---- | ||
| Line 127: | Line 129: | ||
[[새싹교실/2015]] | [[새싹교실/2015]] | ||
[[새싹교실/2015/의사양반]] | [[새싹교실/2015/의사양반]] | ||
* 제가 한번 페이지를 만들어 보았습니다. 허헣 - [[박인서]] | |||
Revision as of 08:16, 8 May 2015
참여자 명단
| 의사 | 장용운 | 11학번 | ~~취침~~출석 |
| 환자 | 천준현 | 15학번 | 출석 |
| 최지혁 | 출석 | ||
| 박인서 | ~~의사처럼 자다왔는데 어쩌다보니~~ 출석 |
수업
진행
- 장소 : 6층 학회실
- 시간 : ~~15시~~ 16시 ~ 17시 ~~2시간 같은 1시간으로 달린다.~~
내용
12강. 문자열
- 문자열이란?
- 문자열의 선언
- 문자열 함수
코드
예제1
숙제
- 이 페이지에 후기 작성하기!
- 오늘 공부한 개념 수업 페이지에 정리하기!
- 문자열 함수 trim을 조사하고 짜오기
후기
- 후기 작성 요령 : 후기는 F4(ThreeFs + Future Action Plan)에 맞게 작성해주세요.
- Facts, Feelings, Findings, Future Action Plan. 즉, 사실, 느낀 점, 깨달은 점, 앞으로의 계획.
* *
- ~~이 정도면 쉬어가는 타임인가~~ 2시간 같은 1시간 이었지만 전 시간에 비하면 쉬어가는 타임이네요.. 음 역시 포인터는 어려웠군요.. 이전까지의 내용을 복습하는데에 중점을 두고 복습하겠습니다. - 박인서
숙제 제출
천준현
최지혁
박인서
- 문자열 : 문자 배열->문자를 여러개 저장
- 선언 : char * str;(기존의 포인터 배열처럼 *(str+i)로 지정 가능) 혹은 char str원하는 문자열의 문자 갯수;
- 문자열의 끝을 NULL='\0'(아스키코드값 0)로 지정->원하는 문자열 길이+1
- %s로 출력, 쌍따옴표("")는 마지막에 알아서 NULL문자를 넣어줌.
- 문자열 함수
- strlen : 문자열의 길이을 return
int strlen(char * s)
{
int res=0;
for(;*s!='\0';s++) res++;
return res;
}
- strcmp : 문자열 2개를 비교하여 같으면 1을 return, 다르면 0을 return
int strcmp(char * s, char * d)
{
for(;*s!='\0';s++,d++) if(*s!=*d) return 0;
if(*d=='\0') return 1;
return 0;
}
- strtoupper : 소문자를 대문자로 모두 변경(직접 대입한 문자(열)를 바꾸기 못함)
int strtoupper(char * str)
{
for(;*str!='\0';str++) if(*str>='a' && *str<='z') *str+=(int)('A'-'a');
}
- strtolower : 대문자를 소문자로 모두 변경(직접 대입한 문자(열)를 바꾸기 못함)
int strtolower(char * str)
{
for(;*str!='\0';str++) if(*str>='A' && *str<='Z') *str+=(int)('a'-'A');
}
- strcpy : 한 문자열의 내용을 다른 문자열에 복사(문자열의 길이가 복사하고자 하는 문자열 변수의 범위를 초과하면 안됨)
int strcpy(char * d, char * s)
{
for(;*s!='\0';s++,d++) *d=*s;
*d='\0';
}
- strdup : 문자열 하나를 생성 후 그 곳에 다른 문자열을 복사
char * strdup(char * s)
{
int len=strlen(s),i;
char * res = (char *) malloc(sizeof(char)*(len+1));
for(i=0;i<=len;i++) res[i]=s[i];
return res;
}
- strcat : 한 문자열의 내용을 다른 문자열에 이어붙이기(붙여야 될 문자열 변수가 수정할 수 있는 문자열이여야 함, 붙여야 될 문자열 변수가)
void strcat(char * d, char * s)
{
for(;*d='\0';d++) ;
for(;*s!='\0';s++,d++) *d=*s;
*d='\0';
}
- strstr : 한 문자열 내에 다른 문자열의 내용이 존재하는지 확인, 인덱스 위치를 return 못찾으면 -1을 return
int strstr(char * s,char * p)
{
int slen,plen,i,j;
slen=strlen(s);
plen=strlen(p);
for(i=0;i<(slen-plen);i++)
{
if(s[i]==p[i])
{
for(j=i;j<=i+plen;j++) if(s[i+j]!=p[j]) break;
if(j==plen) return i;
}
}
return -1;
}
- trim : ~~꺼억~~ 두가지 종류가 있다.
- ltrem : 문자가 나오기 전까지의 공백을 앞으로 땡김
- rtrem : 문자열이 다나온 뒤의 공백을 없애고 NULL을 앞으로 땡김
추가바람
- 제가 한번 페이지를 만들어 보았습니다. 허헣 - 박인서