014-计算机操作系统实验报告之C 程序的编写!

今天给大家分享的是一个计算机网络实验报告:Linux 下 C 程序的编写!

相信学计算机的小伙伴肯定不陌生,这个实验包括了实验目的、实验内容、实验代码及截图三个部分。

详细包括了该实验课程所需要的各个知识点。详情请看图片目录。只分享文档!

需要的点头像进主页看个人简介!需要的点头像进主页看个人简介!


以下请忽略!!!!以下请忽略!!!!以下请忽略!!!!以下请忽略!!!!

下面给出一个最小的 C 程序(Hello World)在 Linux 下的编写、编译与运行步骤,包含命令示例与常见问题排查。

  1. 创建源文件

    mkdir -p ~/c_demo
    cd ~/c_demo
    cat > hello.c <<'C'
    #include <stdio.h>

    int main(void) {
    printf("Hello, World!\n");
    return 0;
    }
    C

  2. 使用 gcc 编译

    gcc -o hello hello.c

常用编译选项:

  • -Wall:开启大部分警告(推荐)
  • -Werror:把警告当错误
  • -O2:优化等级
  • -g:生成调试信息(用于 gdb)

示例(带警告与调试信息):

复制代码
gcc -Wall -Werror -O2 -g -o hello hello.c
  1. 运行程序

    ./hello

    输出: Hello, World!

  2. 常见问题与排查

  • 如果提示 gcc: command not found:安装 gcc(Ubuntu/Debian)

    复制代码
    sudo apt updatesudo apt install build-essential

    CentOS/Fedora:

    复制代码
    sudo dnf install gcc    # 或 sudo yum install gcc
  • 如果出现编译警告/错误:查看源码行,按提示修正(开启 -Wall 帮助定位)

  • 权限问题:确保可执行文件有执行权限(通常 gcc 会设置)

    复制代码
    chmod +x hello
  • 链接错误(未定义引用):检查是否忘记添加库,例如 -lm(math 库)等。

  1. 调试与查看程序信息(简要)
  • 使用 gdb 调试:

    复制代码
    gdb ./hello# 在 gdb 内:run
  • 查看动态库依赖:

    复制代码
    ldd ./hello
  • 查看符号表(如果编译时加了 -g):

    复制代码
    nm ./hello
相关推荐
Chester_19997 小时前
CSP202203C.计算资源调度器
开发语言·数据结构·c++·蓝桥杯
EXI-小洲9 小时前
Java 操作 Word:字符串替换、图片插入、动态生成表格与API接口下载
java·开发语言·spring boot·word
会周易的程序员9 小时前
给 PLC 写一个字节码虚拟机:STVM 虚拟机架构设计
开发语言·c++·虚拟机·软plc·iec61131·stvm
机器视觉知识推荐、就业指导9 小时前
为什么老说“纯 Qt 没啥就业市场”?
开发语言·qt
telepan9 小时前
Qt 开发避坑与性能指南:如何优雅、安全地定义全局常量字符串?
开发语言·qt
m0_695251499 小时前
Qt MaintenanceTool 使用国内镜像加速下载(超详细教程)
开发语言·qt
是隼人10 小时前
buuctf-pwn xdctf2015_pwn200题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
大衛說10 小时前
《Python 从入门到精通》系列总览与学习路线
开发语言·python·学习
可乐鸡翅yeah_12 小时前
hls.js 内存泄漏实战排查,直播 M3U8 长时间播放异常定位方案
开发语言·javascript·python·django·ecmascript·m3u8·m3u8在线
2601_9622035112 小时前
Java进阶07集合(续)
java·开发语言