문제

나는 Arduino를 사용하여 프로젝트를 진행하고 있는데, 따라서 일련 포트에서 읽고 있습니다 (전송합니다. int에스). 그런 다음이 연쇄 의사 소통을 LCD에 써야합니다. char*.

직렬 포트 (2 개의 정수)에서 문자열로 여러 문자를 읽어야합니다. 둘 다받은 후에는 다음 두 캐릭터를 준비하기 위해 문자열을 지워야합니다.

tldr: 어떻게 추가합니까? int a char*, 두 문자가있는 후 문자열을 지우 셨나요?

도움이 되었습니까?

해결책

숯은 단일 캐릭터 인 반면, char*는 캐릭터에 대한 포인터이거나 C 문자열의 첫 번째 문자에 대한 포인터 일 수 있으며, 이는 널 문자로 종료 된 숯의 배열입니다.

당신은 숯을 사용하여 1 자리보다 긴 정수를 나타낼 수 없으므로 실제로 당신이 실제로 char*를했다고 가정 할 것입니다.

당신이 가지고 있다면

char buffer[10];

그런 다음 설정할 수 있습니다 buffer int를 나타내는 문자열로 n Sprintf와 함께

sprintf(buffer, "%d", n);

그리고 당신이 그것을 끝내면, 당신은

sprintf(buffer, "");

그것이 당신이 요구했던 것이기를 바랍니다. 그리고 행운을 빕니다!

다른 팁

당신은 문자 *를 읽을 수 없습니다 *, 그것은 포인터입니다. 유효한 것을 가리키면 포인터가 가리키는 메모리를 읽을 수 있습니다. 청소에 관해서는, 당신이 그 의미가 무엇인지는 분명하지 않습니다.

결론은 원하는 것을 수행하려고 시도하는 실제 코드를 게시하고 그에 대해 물어야한다는 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top