C++ 个函数,在 PHP 中的工作方式类似于 substr()
C++ function that works like substr() in PHP
char * extract(FILE * handle, int from, int len=0)
{
long fsize = filesize(handle);
fseek(handle, from, SEEK_SET);
len = (len > 0) ? fsize : fsize;
char * new_data = new char[len];
for(int i = 0; i < len; i++)
new_data[i] = getc(handle);
return new_data;
}
int main()
{
FILE * file1 = fopen("output.txt", "rb");
char * buffer = extract(file1, 0);
}
我想在 PHP 中创建一个类似于 substr(( 的函数,但它仅适用于二进制文件而不是文本,以上是我想出的。它似乎有效,但我想知道我是否使用了正确的方法。
而不是for {}
循环,使用
fread(new_data, 1, len, handle)
也
len = (len > 0) ? fsize : fsize
始终将 len 设置为文件大小。 也许你想要:
len = (len > 0) ? len : fsize
相关文章:
- 以螺旋方式打印矩阵的程序.(工作不好)
- 为字符串中每 N 个字符插入空格的函数没有按照我认为的方式工作?
- 如何解决在负数的情况下程序以相同方式工作的问题?
- 在 Eclipse 中添加库的工作方式是否与在 Visual Studio 中相同?
- 适用于 macOS 的 Xcode 应用程序。这就是我设置从USB麦克风输入获取音频的方式。一年前工作,现在没有了。为什么
- 我的随机生成器是否不工作,或者我决定人/骨架是否击中对手的方式是否有错误
- OpenGL应用程序在不同的计算机上的工作方式不同
- >= <= 没有按照我使用它们的方式工作,我在哪里搞砸了?
- 程序按执行方式工作,直到我向其添加析构函数为止
- 简单的计数和求和函数没有按照我预期的方式工作
- 任何人都有任何想法编写与C 旧手机中的消息作曲家以相同方式工作的程序
- C++ int x++ 和 int ++x 无法按照我想象的方式工作
- 重载输入/输出运算符,为什么它以这种方式工作而不是以另一种方式工作
- 我正试图在我的SFML Platformer中实现双跳,但它并没有按预期的方式工作
- 比率类中的运算符/=以错误的方式工作
- 怪物阵列没有按我需要的方式工作
- C ++设置没有按照我需要的方式工作
- 为什么这段代码以相反的方式工作?
- 为什么情绪分类不能按照 openCV 链接中指定的方式工作?
- 如果两者都以相同的方式工作,那么使用 void func(struct myStruct s) 和 void func(myStruct s) 有什么区别?