g_strstrip () Segmentation fault 段错误

今天测试使用  g_strstrip( string ) 函数来去除字符串的前后空白,结果发现一直出段错误。

原来是用来测试的字符串初始化不正确导致的。

怀疑直接使用注释中的代码,得到的字符串不是以NULL结尾,所以导致这个问题。

 

/**
* gcc -g -o t-g_strstrip t-g_strstrip.c `pkg-config --cflags --libs gtk+-2.0`
*/
#include <gtk/gtk.h>
int     main(int argc, char* argv[])
{

        gchar *for_strip = g_strdup("  b  bbbbbSTRINGbbbbbZ  ");
        // gchar *for_strip = "  b  bbbbbSTRINGbbbbbZ  "; ERROR CODE
        g_message ("befor strip is |%s|\n",for_strip);
        g_strstrip (for_strip);
        g_message ("after strip is |%s|\n",for_strip);

        return FALSE;
}
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Segmentation fault是一种错误,表示程序访问了一个非法的内存地址。这通常是由于程序中的bug或错误引起的。在引用中提到的错误消息"gpio_export Segmentation fault"表明在执行gpio_export命令时发生了一个非法内存访问错误。具体的原因可能是程序本身的bug或者系统资源被占用导致的。要解决这个问题,可以尝试以下几个步骤: 1. 检查程序的代码:查看代码中是否有错误或逻辑问题。特别注意是否正确地初始化了相关的变量和资源。 2. 检查系统资源:检查系统的资源使用情况,特别是与gpio操作相关的资源。确保没有其他进程正在占用相关的gpio资源。 3. 更新系统和软件:确保系统和相关软件都是最新的版本。有时,特定版本的软件可能存在bug,通过更新软件版本可以解决问题。 4. 调试程序:使用调试工具来定位并修复程序中的错误。可以使用gdb等工具来跟踪程序的执行过程,找出导致非法内存访问的具体原因。 5. 寻求帮助:如果以上步骤都没有解决问题,可以向相关的技术支持或开发者社区寻求帮助。他们可能能够提供更具体的解决方案或建议。 总之,"gpio_export Segmentation fault"错误通常是由程序中的bug或系统资源占用导致的非法内存访问错误。通过检查代码、检查系统资源、更新软件、调试程序和寻求帮助等步骤,可以解决这个问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值