如何获取指针字符串的长度

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何获取指针字符串的长度相关的知识,希望对你有一定的参考价值。

#include<iostream>
#include<cstring>
using namespace std;
void main()

char *p="hello";
int size=sizeof(p);
cout<<size<<endl;
//输出为4,为什么不是真实的值6呢,怪了。

SizeOf是一个获得某个对象变量或数据类型在内存中所占字节的函数.
指针变量的sizeof值与指针所指的对象内容是没有任何关系的,因为同一类型的指针变量所占内存大小都是相等的。
所以
char* pc = "abc";
char* pi="dfewr";
char* ps="erwqrerweqr";
sizeof( pc ); // 结果为4
sizeof( pi ); // 结果为4
sizeof( ps); // 结果为4
如果你要取得一个字符串的长度(不包括结束符\0),应该使用字符串处理函数 strlen
int size=strlen(p)
参考技术A sizeof在C\C++中是运算符,不是函数。它的处理在编译时进行。

如何在lua中设置文件写入函数调用的长度?

我正在使用嵌入式lua,它提供了访问C中某些数据的接口。具体来说,它以原始字节获取图像blob。我知道原始数据的大小,我想把这个blob写入磁盘。

但是,我无法从lua io包中弄清楚如何写一组长度的数据。如何设置写入调用将使用的字节数?

答案

io库的写入函数期望字符串或数字作为输入,两者都具有已知长度。

它不像在C中,你可能会给出一个指针和一些要写入的字节。

以上是关于如何获取指针字符串的长度的主要内容,如果未能解决你的问题,请参考以下文章

DataRow数组如何获得行数

如何 initwithCoder 和 encodewithCoder 获取指针的值

ASP中getrows()如何获得数组的标题

如何获取指向专门针对字符串的模板函数的指针?

C++ 字符串 - 如何避免获取无效指针?

如何从在 C 中存储 shell 脚本输出的指针获取多个字符串?