第一次试着在Linux下写C程序
今天第一次试着在Linux下写C程序,把遇到的问题记录一下
1. 使用emacs命令编辑程序文件,我直接在Terminal里输入了emacs,写好程序,关闭,结果和windows里不一样,并没有任何SaveFileDialog之类的对话框弹出来,自己写的东西也不知道保存到哪里了,而且File菜单里也没有New这样的选项。后来才知道,原来是得在emacs命令后加上文件名的,如emacs HelloWorld.c
2. Linux里文件区分大小写,因此HelloWorld.c和helloworld.c是两个不同的文件。。。
3. 在文件里输入了以下代码
#include <stdio.h>
void main()
{
printf("Hello World");
}
用gcc -o HelloWorld HelloWorld.c编译,出错,Linux里似乎main方法必须返回一个int型,而不能是void类型。
4. 修改好了代码,编译成功后,直接输入HelloWorld打算运行,出错,说HelloWorld不是一个可运行的command,用ls命令查看,HelloWorld文件的确存在,并且为绿色,根据网上的资料,应该可以执行,后来才发现原来需要加上./,即输入./HelloWorld才能运行。
一个简单的HelloWorld却遇到了这么多麻烦。呵呵~不过总算成功运行了,小小庆祝一下!接着就要好好学习一下《世界著名计算机教材精选 数据结构基础(C语言版) (第2版)》这本书了!
相关文档:
例一:发送Signaling Packet:
Signaling Command是2个Bluetooth实体之间的L2CAP层命令传输。所以得Signaling Command使用CID 0x0001.
多个Command可以在一个C-frame(control frame)中发送。
如果要直接发送Signaling Command.需要建立SOCK_RAW类型的L2CAP连接Socket。这样才有机会自己填充Command Code,Identi ......
1. 前言
以太头中除了6字节目的MAC地址、6字节源MAC地址外,还有两字节的以太帧类型值,如IPv4为0x0800,ARP为0x0806等,网卡驱动收到以太帧后通过接口函数netif_receive_skb()(netif_rx实际最后也是调用netif_receive_skb)交到上层,而这个接口函数就完成对以太帧类型的区分,交到不同的协议处理程序。如果想自己编写某一 ......
原文地址:http://www.wangzhongyuan.com/archives/487.html
以下是一个Linux/Unix下显示某一目录下文件列表的C程序,相当于最基本的ls命令的功能,显示的内容报告该目录下的子目录以及文件名:
#include <sys/types.h>
#include <dirent.h>
#include <stdio.h>
#include <errno.h>
int m ......
原文地址:http://www.wangzhongyuan.com/archives/488.html
以下是一个Linux/Unix下由两个管道提供双向数据流的C程序,这是操作系统课程中经常使用的基本程序
#include <unistd.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <stdio.h>
#include <string.h>
int m ......
c/C++文件操作
软件开发 2009-03-12 16:22 阅读18 评论0
字号: 大大 中中 小小
基于C的文件操作
在ANSI C中,对文件的操作分为两种方式,即流式文件操作和I/O文件操作,下面就分别介绍之。
一、流式文件操作
这种方式的文件操作有一个 ......