아두이노 String to char Array, char pointer to char Array

DongHee Lim·2022년 5월 14일
0

Arduino

목록 보기
1/1

서론


아직 ESP-idf 가 익숙하지 않아서
ESP32를 Arduino IDE에서 쓸 경우가 많다.

특히, PC에서 원격으로 제어할 경우가 그런데

STM32 보드나 PC에서 쓸 때
문자열을 관리하기 위해서
아두이노에서 쓰는 String 보다
char[] 나 char*를 쓰는게 전달하기에 편했다.


사용법


1. char pointer to char Array

char arr[32] = {0, };	// 전역변수일 경우 초기화 안해도 됨
char* sample = "hello";

strcpy(arr, sample);	// char[], String

참고) 구조체 복사는 memcpy (복사되는 구조체 주소 , 복사할 구조체 주소, 구조체 크기)

2. String to char Array

char arr[32] = {0, };
String testStr = "hello";

testStr.toCharArray(arr, sizeof(arr));	// char[], buffer length	

두번째 매개 변수 length의 경우
3을 입력하면 2개의 문자와 \0 (NULL) 이 들어간다.
그 결과 he 까지만 표현이 된다.

배열에서 0 (NULL) 은 표현이 출력이 안되기 때문에 편하게 sizeof(배열) 하면 된다.

참고) 0을 출력하고 싶으면 '0'을 넣어야한다.

profile
하고 싶은 것, 소유하고 싶은 것, 좋아하는 것

0개의 댓글