【发布时间】:2017-09-01 06:22:47
【问题描述】:
如何从 variable(&variable) 的地址找到字符串的长度?下面是代码:
SimpleProfile_GetParameter(SIMPLEPROFILE_CHAR7, &newValue); // Hello123
const char echoPrompt[] = "Print From BLE characters:\r\n";
UART_write(uart, echoPrompt, sizeof(echoPrompt)); // Output : Print From BLE characters: | Size : 29
UART_write(uart, &newValue, sizeof(&newValue)); // Output : Hello | Size : 4
我在Code Composer Studio (CCS) 中使用此代码。我需要在 UART 中打印字符串,我需要指定字符串中的字符数。
我需要打印“Hello123”而不是打印“Hello”
【问题讨论】:
-
sizeof(&newValue)正在获取指针的大小,而不是数组。 -
如果你想要一个字符串的长度,使用
strlen()。 -
可以,我能得到数组的大小吗?。我修改了我的问题
-
“字符串”是正确的以空字符结尾的字符串吗?然后使用
strlen得到它的长度。否则,仅使用指针无法获取某些内存的大小。 -
目前它的数据类型为“unsigned char”
标签: c++ embedded uart texas-instruments code-composer