티스토리 뷰
지난 포스팅에서 string이란 변수를 확인해보는 코드를 다뤄봤었는데 이번에는 지난 번에 잠깐 언급했던 index함수에 대해서 언급해보고자 합니다. index함수는 다음과 같이 씁니다.
String형 변수.index('자신이 찾고자 하는 문구')
이를 확인해보기 위해서 string형 변수와 이를 확인하기 위한 CommaPosition을 int형으로 잡습니다.그리고 setup에선 컴퓨터와의 직렬통신을 위해서 baud rate을 맞춰야 하겠지요.
자 이제 본격적인 확인에 들어가야 합니다. 위에서 언급한 문법처럼 적용합니다.
index를 했을때 해당 character가 없는 경우에는 -1 값을 return해줍니다. 그래서 위와 같은 경우에는 message를 계속 돌리면서 ,가 없을때는 if구문을 벗어나고 아니면 if안의 실행 구문을 실행시키겠지요. 이에 대한 조건문을 다음과 같이 구성합니다.
여기에 새로운 substring()이란 함수가 등장합니다. 아시던 분도 계시겠지만 substring()은 자료를 받아서 그 자료내에 들어있는 문자열을 반환하는 함수입니다. 참고로 유의할 것은 위처럼 0,commaPosition이라는 범위는 사실 0부터 commaPosition-1 까지의 범위를 나타낸다는 것입니다. 그래서 commaPosition까지의 message를 ,를 기점으로 계속 저장을 시킨다는 것을 확인 할 수 있습니다. 즉 계속 이 루프가 돌아간다면 message에는 Peter, Paul, Mary가 차례대로 저장된다는 겁니다. 이에 대한 Serial Monitor의 결과는 다음과 같이 나옵니다.
이렇게 message를 ,를 통해서 뽑아낼 수 있습니다. C를 잘하시는 분이라면 위와 같이 index를 사용하는 게 아니라
다른 방법으로 해당 message를 뽑아 낼 수 있지요. 다음 내용이 C에 대한 내용입니다.
우선 C만의 내용으로 접근하기 위해서는 Strtok_r이란 함수를 사용해서 문자열로부터 토큰을 뽑아내는 과정이 필요합니다. 그런데 보다시피 포인터도 사용해야 되고 일일이 버퍼로 옮겼다가 빼는 복잡한 과정이 필요합니다.
물론 실험 결과는 다음과 같습니다.
결과야 엇비슷하게 나오는데 확실히 java에서 파생된 index 함수를 쓰면 조금 편리하게 문자열을 뽑아올 수 있겠지요.
뭐 아니면 키패드로 암호화 하는 작업도 이를 이용하면 편리하게 써먹을 수도 있겠구요.
자 이제 본격적인 확인에 들어가야 합니다. 위에서 언급한 문법처럼 적용합니다.
index를 했을때 해당 character가 없는 경우에는 -1 값을 return해줍니다. 그래서 위와 같은 경우에는 message를 계속 돌리면서 ,가 없을때는 if구문을 벗어나고 아니면 if안의 실행 구문을 실행시키겠지요. 이에 대한 조건문을 다음과 같이 구성합니다.
여기에 새로운 substring()이란 함수가 등장합니다. 아시던 분도 계시겠지만 substring()은 자료를 받아서 그 자료내에 들어있는 문자열을 반환하는 함수입니다. 참고로 유의할 것은 위처럼 0,commaPosition이라는 범위는 사실 0부터 commaPosition-1 까지의 범위를 나타낸다는 것입니다. 그래서 commaPosition까지의 message를 ,를 기점으로 계속 저장을 시킨다는 것을 확인 할 수 있습니다. 즉 계속 이 루프가 돌아간다면 message에는 Peter, Paul, Mary가 차례대로 저장된다는 겁니다. 이에 대한 Serial Monitor의 결과는 다음과 같이 나옵니다.
이렇게 message를 ,를 통해서 뽑아낼 수 있습니다. C를 잘하시는 분이라면 위와 같이 index를 사용하는 게 아니라
다른 방법으로 해당 message를 뽑아 낼 수 있지요. 다음 내용이 C에 대한 내용입니다.
우선 C만의 내용으로 접근하기 위해서는 Strtok_r이란 함수를 사용해서 문자열로부터 토큰을 뽑아내는 과정이 필요합니다. 그런데 보다시피 포인터도 사용해야 되고 일일이 버퍼로 옮겼다가 빼는 복잡한 과정이 필요합니다.
물론 실험 결과는 다음과 같습니다.
결과야 엇비슷하게 나오는데 확실히 java에서 파생된 index 함수를 쓰면 조금 편리하게 문자열을 뽑아올 수 있겠지요.
뭐 아니면 키패드로 암호화 하는 작업도 이를 이용하면 편리하게 써먹을 수도 있겠구요.
'Arduino' 카테고리의 다른 글
[Netduino] Netduino와의 만남! (0) | 2012.06.21 |
---|---|
[Arduino] 아두이노와 시리얼통신으로 대화하기 (2) | 2012.05.16 |
[Arduino] Converting Element (0) | 2012.05.16 |
[Arduino] 아두이노로 String 형 변수 이용. (3) | 2012.03.11 |
[Arduino] array에 대한 정보를 LED를 통해서 확인. (0) | 2012.03.08 |
[Arduino] Floating-Point number 구분 (0) | 2012.03.05 |
다양한 스위치를 활용한 불 밝기 조절. (0) | 2012.01.31 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- 강화학습
- 한빛미디어
- Distribution
- SketchFlow
- ColorStream
- Kinect for windows
- Windows Phone 7
- processing
- Off-policy
- Variance
- TensorFlow Lite
- End-To-End
- Kinect
- reward
- 파이썬
- ai
- Expression Blend 4
- dynamic programming
- Offline RL
- DepthStream
- RL
- 딥러닝
- Kinect SDK
- arduino
- Policy Gradient
- windows 8
- Pipeline
- PowerPoint
- bias
- Gan
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함