資源簡介
面試嵌入式工程師常見的手寫C語言函數(shù),全部摘錄與Rtthread內(nèi)核源碼進(jìn)行少量修改
代碼片段和文件信息
void?*memset(void?*s?int?c?rt_ubase_t?count)
{
????char?*xs?=?(char?*)s;
????while?(count--)
????????*xs++?=?c;
????return?s;
}
void?*memcpy(void?*dst?const?void?*src?int?count)
{
????char?*tmp?=?(char?*)dst?*s?=?(char?*)src;
????int?len;
????if?(tmp?<=?s?||?tmp?>?(s?+?count))
????{
????????while?(count--)
????????????*tmp?++?=?*s?++;
????}
????else
????{
????????for?(len?=?count;?len?>?0;?len?--)
????????????tmp[len?-?1]?=?s[len?-?1];
????}
????return?dst;
}
void?*memmove(void?*dest?const?void?*src?rt_ubase_t?n)
{
????char?*tmp?=?(char?*)dest?*s?=?(char?*)src;
????if?(s?????{
????????tmp?+=?n;
????????s?+=?n;
????????while?(n--)
????????????*(--tmp)?=?*(--s);
????}
????else
????{
????????while?(n--)
????????????*tmp++?=?*s++;
????}
????return?dest;
}
int?memcmp(const?void?*cs?const?void?*ct?int?count)
{
????const?unsigned?char?*su1?*su2;
評論
共有 條評論