• unix/linux 环境软件调试笔记


    员工培训 ppt 内容

    静态代码跟踪

    正则表达式简介
    函数定义
    find . "*.h"
    查找函数声明 ^\sclass::function\(

    使用“在文件中查找”功能
    find . -name
    转到某一行

    括号匹配

    代码分析:

    1、代码折叠
    2、变量查找与替换 左值和右值
    3、代码比较

    ulteredit
    其它的工具;
    editplus:
    优点: 1、可以免费使用 2、ftp 打开、保存文件快
    缺点: 1、ftp 功能对某些 unix 系统支持不好。
           2、不支持函数列表功能。
    source inside
    优点:支持函数跳转
    缺点:查找速度极慢

    程序调试:

    常用的 shell命令

    ps 命令
    ps -ef |grep


    正则表达式简介

    代码跟踪

    grep 命令

    使用示例:

    find 命令

    nm 命令

    使用示例:

    ld: 0711-317 ERROR: Undefined symbol: .CInvoice::disposeInvoice(int*,const TAcctFund*,int,int,long,int,int)
    ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
    Stop.

    /lntest/src/bill$find . -name "*.o" -exec nm -u -O -X 64 {} \; | grep disposeInvoice
    nm: ./Acctant/gactantpar.o: 0654-203 Specify an XCOFF object module.
    nm: ./Acctant/mactantcmt.o: 0654-203 Specify an XCOFF object module.
    nm: ./Acctant/matantbcmt.o: 0654-203 Specify an XCOFF object module.
    nm: ./Acctant/mgetactant.o: 0654-203 Specify an XCOFF object module.
    ./Pay/CBillBase.o: .CInvoice::disposeInvoice(int*,const TAcctFund*,int,int,long,int,int) U           -
    ./Pay/CBillNewFund.o: .CInvoice::disposeInvoice(int*,const TAcctFund*,int,int,long,int,int) U           -
    ./Pay/mechannelprt.o: .CInvoice::disposeInvoice(int*,const TAcctFund*,int,int,long,int) U           -
    ./Pay/mdrawcmt.o: .CInvoice::disposeInvoice(int*,const TAcctFund*,int,int,long,int,int) U           -
    ./Pay/mprninv.o: .CInvoice::disposeInvoice(int*,const TAcctFund*,int,int,long,int,int) U           -
    nm: ./common/DynLib.o: 0654-203 Specify an XCOFF object module.
    nm: ./common/PtrArray_t.o: 0654-203 Specify an XCOFF object module.
    nm: ./common/Thread.o: 0654-203 Specify an XCOFF object module.
    /lntest/src/bill$

    ar 命令

    环境查看

    env

    ipcs/ipcrm

    ps - report a snapshot of the current processes.

    常用命令

    grep -n "texttofind" */*.cpp

    find . -name "*.cpp" -exec grep  -l "texttofind" {} \;

    find . -name "*.cpp" -exec grep  -n "texttofind" {} \;

    -l 打印所在行

    -n 打印文件名

    查看目标文件中所有未定义的符号

     find . -name "*.o" -exec nm -u -O -X 64 {} \;

    -O 表示打印文件名

    -X 指明是 64bit 的目标文件

    ulimit -c 1024

    dbx filename core

    stopi

    catch

    正则表达式

     静态调试

    编译器宏

    __FILE__ 

    __LINE__

    -g

    -DDEBUG

    参考资料:

         1  正则表达式教程

          2 proc sql

  • 相关阅读:
    闲扯 Javascript 01 实现选项卡
    控制台获得键盘事件
    C#反射 入门学习 02
    C#反射 入门学习 01
    闲扯 Javascript 00
    读张子阳老师的委托和事件 2
    浅析ado.net获取数据库元数据信息 DeriveParameters
    SQLBulkCopy使用
    利用CryptoStream进行加密解密
    vs 中代码的字体也颜色设置
  • 原文地址:https://www.cnblogs.com/diylab/p/1642077.html
Copyright © 2020-2023  润新知