有关c的一些总结

cc -O  aa.c -o aa

或者

make  aa

要保证当前路径下有aa.c

~/bin 可执行程序目录
~/etc 配置文件目录
~/inc 头文件目录
~/lib 函数库文件目录
~/log 日志文件目录
~/src 源程序文件目录
~/src/lib 函数库源程序目录

Kornshell=
Bourne shell
+
C shell

"/","null" 不能出现在filename中

makedir的时候自动创建"."--》当前目录,".."--》父目录

filename 一般小于255

/开始的是absolute pathname
否则 relative pathname

ansi c 风格?

第7章说明main如何被调用

work directory 工作目录
登陆的时候从口令文件中读取

标准输入,标准输出和标准出错^_^

unistd.h 和STDIN_FILENO,STDOOUT_FILENO
read() and write();

stdio.h

extern FILE     _iob[_NIOBRW];

#define stdin           (&_iob[0])


进程 ,任务 ,可执行文件

c = getc(stdin);
   putc(c,stdout);
   printf("/n");
   c = getc(stdin);
   putc(c,stdout);
   printf("/n");

一个问题以上代码进行试验的时候和我想象的不太一样执行结果如下

[CSPS3.0生产机:csps:/csps/tmp]ee
a
a


[CSPS3.0生产机:csps:/csps/tmp]ee
2341414
2
3

c = getc(stdin);
   c = getc(stdin);

putc(c,stdout);
   putc(c,stdout);
   printf("/n");

执行结果
[CSPS3.0生产机:csps:/csps/tmp]ee
f

[CSPS3.0生产机:csps:/csps/tmp]ee
14
44

int getpid() 唯一

### 实验目的 C语言实验主要是为了巩固课堂所学的理论知识,提升编程实践能力,深入理解C语言的特性与应用场景,掌握程序设计的基本方法和技巧,为后续的专业学习和实际项目开发奠定基础。 ### 实验内容 #### 命令行参数处理 ```c #include <stdio.h> int main(int argc, char *argv[]) { int i; for (i = 0; i < argc; i++) { printf("Argument %d: %s\n", i, argv[i]); } return 0; } ``` 此程序借助 `main` 函数的 `argc` 和 `argv` 参数处理命令行输入。`argc` 记录参数数量,`argv` 是指向字符串数组的指针,每个字符串代表一个命令行参数。通过循环遍历 `argv` 数组,可将参数及其序号输出,实现程序与命令行的交互[^1]。 #### C51中指针内存类型 在C51环境下,指针内存类型有不同特点。未定义指向内存类型的通用指针占3个字节,指定指向 `data` 区的指针占1个字节,指定指向 `xdata` 区的指针占2个字节。例如: ```c char data *p; ``` 上述代码表示指针 `p` 指向 `data` 区的变量。还能指定指针本身的存放内存类型,如: ```c char data * xdata p; ``` 这表明指针 `p` 指向 `data` 区变量,自身存于 `xdata` 区。合理运用指针内存类型可节省内存,提高程序运行效率[^2]。 ### 实验结果与分析 #### 命令行参数处理 程序能正确接收并输出命令行输入的参数,验证了命令行参数处理的可行性。但对于复杂参数格式,如带选项的参数,当前程序无法处理,需进一步优化。 #### C51中指针内存类型 通过实验可知,不同内存类型的指针占用不同字节数。合理选择指针内存类型可显著节省内存空间,尤其在嵌入式系统资源有限的情况下,对提高程序性能至关重要。 ### 实验收获与体会 通过本次实验,加深了对C语言基础知识的理解,掌握了命令行参数处理和C51指针内存类型的使用方法。体会到C语言语句简洁、使用灵活、执行效率高的特点,也认识到上机实训对巩固理论知识和提高编程能力的重要性。同时,意识到在实际编程中要根据具体需求选择合适的编程方法和数据类型,以提高程序性能和可维护性。 ### 实验中的问题与解决方法 在实验过程中,遇到了一些问题。例如,在处理命令行参数时,可能因对参数数量和格式判断错误导致程序出错;在使用C51指针时,可能混淆不同内存类型指针的定义和使用。通过仔细阅读代码和文档,进行调试和测试,逐步排查并解决了这些问题。 ### 总结与展望 本次C语言实验为进一步学习和应用C语言奠定了坚实基础。未来将继续深入研究C语言的高级特性和应用,不断提高编程能力和解决实际问题的能力。同时,会将所学知识应用到实际项目中,为嵌入式系统开发和其他相关领域的发展贡献力量。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值