gcc test.c -o -g -g为编译后可调式
gdb test 调试test
(gdb)l 5 显示1-10行代码,5为中间行
r 运行程序
b 设置断点
b 14 在14行处设置断点
b main 在main函数处设置断点
info b 查看断点
n 执行下一行代码(定义变量不算在内,且不进入函数)
s 执行下一行代码(遇到函数进入)
c 继续执行
p 打印变量值
q 退出调试
5.脚本语言shell
脚本的后缀 .sh
例
#!/bin/bash
echo "混沌决" #打印混沌决
echo "混沌决" > hd.txt #将混沌决写入hd.txt
cat /home/chuixue/HELLO/Hello.c >> hd.txt #将源文件内容写入hd.txt
TMP="一重山是一重关,一重关处道仙缠" #定义变量
echo ${TMP} #打印变量
echo $TMP #同上
echo "第一个参数是: $1"
echo "第二个参数是: $2"
echo $* #打印所有参数
echo $# #打印参数的个数
for((i=0;i<5;i++))
do
echo "我在人间彷徨"
done #打印5遍我在人间彷徨
for i in $1 $2 $3 $4
do
mkdir $i
cd $i
echo >$i.c"
#include<stdio.h>
int main()
{
printf(\"helloword!\\n\");
return 0;
}"
cd ..
done #创建以1,2,3,4为名字的文件夹,每个文件夹各创建一个与其名字相同的 .c 文件并写入规定的内容
if [ $1 -eq 0 ]; then
echo "恭喜您是0号"
fi
if [ $2 -gt 0 ]; then
echo "恭喜您比0大"
elif [ $2 -lt 0 ]; then
echo "恭喜您比0小"
else
echo "恭喜您是0"
fi
if [-d $3 ]; then
echo "这是目录"
elif [ -f $3 ]; then
echo "这是文件"
fi #判断参数是否比零大,判断是否为目录或文件,打印相应的结果