【发布时间】:2017-03-12 23:49:56
【问题描述】:
我做了一个函数,它接收一个字符数组的指针,表示一个十六进制数,并返回它的十进制值。
在那个函数中,这是我目前用来获取数组大小的函数
size_t iSize = 0;
while (s[iSize] != '\0'){ iSize++; }
我正在寻找一种更好的方法来做到这一点。 我已经尝试过 int `iSize = sizeof(s)/sizeof(s[0])。
【问题讨论】:
-
要查找空终止字符串的长度,请使用
strlen。根据您的描述,这是您关心的,而不是数组的大小。 -
您是否考虑过用一个函数
strtol替换整个将十六进制字符串转换为数字的函数? -
size_t iSize = strlen(s); ?
标签: c