我通过UDP接收char数组并对其运行一些格式化操作。工作正常。(形式为dd:123)
我使用“dd”作为我的if案例。现在我需要将123(保存在d中)保存在无符号整数pwmValue0中。
如果有人知道如何做到这一点,我会很高兴,如果你可以帮我一点
度过美好的一天!
recv(serverSocket, msg, sizeof(msg), 0);
printf("Here is the message: %s\n", msg);
char *c;
char *d;
c = strtok(msg, ":");
printf("token %s \n", c); //correct
d = strtok(NULL,".");
printf("token1 %s \n",d); //correct
if (strcmp(v0, msg) == 0) {
printf("Motortest\n");
printf("token2 %s \n",d); //correct
pwmValue0 = d; // How can I make this assignment?
答案 0 :(得分:1)
像这样:
pwmValue0 = strtol(d, NULL, 10);
答案 1 :(得分:1)
strtok
返回char*
,您说pwmValue0
是unsigned int
,因此您可以使用atoi()
示例:强>
#include <stdio.h>
#include <stdlib.h>
int main(void) {
// your code goes here
char* p = "123";
int d;
d = atoi(p);
printf("%d",d);
return 0;
}