查找仅知道其指针的字符数组的大小

时间:2018-11-18 13:57:57

标签: c arrays string pointers

首先让我说清楚一点,我知道以下代码使用了在增大大小的同时遇到NULL的事实。

//p is a pointer to a character array aka string
//size is the length of the string
for (char *i = p; *i != '\0'; i++, size++)
        ;
    size--;

我对此感兴趣的是>> Make your own sizeof() operator

但是以上文章仅适用于整数数组。我想出了一个用于字符数组的代码,如下所示:

//p points to a character array
int size1 = (int)(*(&p + 1) - p);

但是它不起作用。有人可以对其进行一些调整,以使其强制运行,或者告诉我为什么它是错误的。

0 个答案:

没有答案