今天遇到了个需要求字符串数组string []里的元素个数的问题:
string a[] = {"A","B","CD","EF","GHI"};
百度了一下,看到了用.length,但是我自己用的时候编译都过不了。sizeof(a)的结果为:120,但是我需要的是个数:5。
最后求助大佬,得到回答:sizeof(arr)/sizeof(element) 可以。
sizeof()是一种内存容量度量函数,返回的值为占内存的大小。
后续尝试:
sizeof(a)/sizeof(a[0]);
sizeof(a)/sizeof(*a);
终于成功获得了个数,感动。
本文探讨了在C语言中如何准确地计算字符串数组的元素个数,而非其占用的内存大小。通过使用sizeof(arr)/sizeof(element)的方法,有效地解决了原本使用.length属性无效的问题。
2895





