小编Phi*_*lip的帖子

Android 中的 SYSCALL_INLINE

我需要在 Android NDK 内部使用 syscall 来防止挂钩包装函数。在 Linux 中有像 SYSCALL_INLINE 这样的宏,它允许在没有包装函数的情况下使用系统调用。因此宏将系统调用汇编代码直接嵌入到项目中。

我在 Android NDK 中找不到类似的宏。

也许我可以像这样编写自己的函数;https://git.busybox.net/uClibc/tree/libc/sysdeps/linux/arm/syscall.c

但我需要有相同功能的 arm、arm_64、x86 和 x86_64 版本。

你能帮助我吗?我怎样才能找到解决办法?

assembly android multiplatform system-calls android-ndk

3
推荐指数
1
解决办法
1540
查看次数

松本中的线角

我想在TradingView Pine Script语言中找到最近200条的价格趋势。

我想画一条线,从最新的柱线(关闭)到较旧的200条柱线。然后,我想以度为单位计算线的角度,以查看趋势的多头或多头。

我可以通过TradingView绘图屏幕中的回归趋势工具轻松完成此操作。我想通过编程来做同样的事情。

我想可以通过以下公式(Java)找到角度:

double rads = Math.Atan((line.Y2 - line.Y1) / (line.X2 - line.X1));
double degrees = rads * (180f / Math.PI);
Run Code Online (Sandbox Code Playgroud)

你能给我一个例子吗?

谢谢

tradingview-api pine-script

3
推荐指数
2
解决办法
1743
查看次数

实现我自己的“字符串”工具——GNU 字符串找到的缺失序列

我想以编程方式读取二进制文件中的文本/字符串。

我的目标的确切替代方案是stringsLinux 中的shell 命令。

当我运行strings -n 4 /bin/ddshell 命令时,它会打印 818 行文本。

如何像strings命令一样找到二进制中的所有字符串?


我的代码在找到 EOF 后使用read代替fgetc并为其余文本添加了打印块。

它可以在 中找到 813 个单词/bin/dd,但仍然strings可以找到 818 个单词。有什么区别?

另一个问题; 您能建议此代码的性能改进吗?我想read(1)不是最快的方法。

最新更新代码

#include <stdio.h>
#include <stdbool.h>
#include <unistd.h>
#include <fcntl.h>

bool isPrintable(unsigned char c)
{
    if(c >= 0x20 && c <= 0x7e || c == 0x09)
    {
        return true;
    }
    return false;
}

int main(int argc, char * argv [])
{
    char …
Run Code Online (Sandbox Code Playgroud)

c linux string binary shell

0
推荐指数
1
解决办法
330
查看次数

在C中实现最快的fgets

已知的fgets libc函数实现fgetc()在里面使用,如何使用read()更大的缓冲区或其他方法代替加速函数?

例如,我读取/proc/pid/maps文件来搜索一些字符串.该文件的格式是已知的,目前我使用fgets链接中的实现read(fd, &c, 1);代替getc.我认为从文件读取单字节比读取200字节慢.所以我想修改函数从文件读取N个字节,然后找到换行符.我认为替换1字节读取可以以某种方式加速该功能.

c performance implementation libc fgets

-2
推荐指数
1
解决办法
514
查看次数