如何在Mikroc Pro中从字符数组中获取字符串的最后四个数字

如何在Mikroc Pro中从字符数组中获取字符串的最后四个数字,mikroc,Mikroc,我有像贝娄一样的字符数组 char ch1_on[]="0123456789"; 我需要将上面变量的最后四个数字(6789)转换为int变量。我该怎么做?您需要的功能是MikroC库中的“memmove” 其原型定义为:void*memmove(void*to,void*from,intn) 其中,void*to是一个临时字符数组(它将保存子字符串6789),void*from是您的字符数组ch1\u on加上您需要复制的起始索引(在您的情况下是+6,因为您希望将字符从索引6复制到9)和int

我有像贝娄一样的字符数组

char ch1_on[]="0123456789";

我需要将上面变量的最后四个数字(6789)转换为int变量。我该怎么做?

您需要的功能是MikroC库中的“memmove”

其原型定义为:
void*memmove(void*to,void*from,intn)

其中,
void*to
是一个临时字符数组(它将保存子字符串6789),
void*from
是您的字符数组
ch1\u on
加上您需要复制的起始索引(在您的情况下是+6,因为您希望将字符从索引6复制到9)和
int n
其中'n'是要复制的字符数(在您的示例中为4;6、7、8、9)

因此,要处理它,您只需声明持有人:

char converted[] = "0000";
然后做一个动作:

memmove(converted, ch1_on + 6, 4);
最后,使用
atoi
将子字符串转换为整数

result = atoi(converted);
结果将保存最终的整数

有关更多信息,请参阅MikroC的帮助部分,并在ANSI C字符串库主题下搜索“memmove”