从0开始学习linux C编程

我是在windows xp-sp2上使用SSHSecureShellClient-3[1].2.9.exe进行linux C编程的,下面先讲一下怎么使用这个软件:

在本地安装SSHSecureShellClient-3[1].2.9.exe,在服务器上建立用户名和密码,然后打开SSH Secure Shell Client,enter键或者点击quick connect,输入目标机(我不懂,瞎叫)ip,输入用户名,enter键,输入密码。现在你应该已经进入linux了,在这里所有的linux命令都可以使用,新手不妨先敲几个常用的命令试一下!

下面从最简单的hello word讲到比较复杂的库引用,当然怎么写通用的makefile限于水平,不做讨论。

1、hello word

1)、程序:

#include <stdio.h>

int main(void)
{
printf ("hello, word\n");

return 0;
}

名字为helloword.c

2)、运行:

进入SSH Secure Shell Client,使用 《cd 路径名》进入到你的helloword.c所在的目录,

然后gcc -o helloword helloword.c,下面将显示编译的情况,有错误和警告将会列出,没有则不显示而返回的你刚才进的目录,要运行则输入./helloword, 这样就会看到hello, word

2、编译多个.c和.h文件组成的程序,这时需要写makefile

1)、程序:

#include "mytool1.h"
#include "mytool2.h"
int main(int argc,char **argv)
{
mytool1_print("hello");
mytool2_print("hello");
}

名字为main.c

#include "mytool1.h"
void mytool1_print(char *print_str)
{
printf("This is mytool1 print %s\n",print_str);
}

名字为mytool1.c

#ifndef _MYTOOL_1_H
#define _MYTOOL_1_H
void mytool1_print(char *print_str);
#endif

名字为mytool1.h

#include "mytool2.h"
void mytool2_print(char *print_str)
{
printf("This is mytool2 print %s\n",print_str);
}

名字为mytool2.c

#ifndef _MYTOOL_2_H
#define _MYTOOL_2_H
void mytool2_print(char *print_str);
#endif

名字为mytool2.h

时间: 2025-01-31 01:45:56

从0开始学习linux C编程的相关文章

Proxy源代码分析--谈谈如何学习linux网络编程

原创地址: http://fanqiang.chinaunix.net/a4/b7/20010810/1200001101.html   Linux是一个可靠性非常高的操作系统,但是所有用过Linux的朋友都会感觉到,Linux和Windows这样的"傻瓜"操作系统(这里丝毫没有贬低Windows的意思,相反这应该是Windows的优点)相比,后者无疑在易操作性上更胜一筹.但是为什么又有那么多的爱好者钟情于Linux呢,当然自由是最吸引人的一点,另外Linux强大的功能也是一个非常重要

linux c-小白刚开始在linux学习c语言编程。有问题不会请各位大神指导下

问题描述 小白刚开始在linux学习c语言编程.有问题不会请各位大神指导下 6行和7行中的main有什么作用 解决方案 Programme file name! if programme file name is "test", gcc -o test .... 解决方案二: i wait to reply for your question 解决方案三: 这是Makefile的编写,main.o是main.c生成的中间文件,第七行的main表示最终生成的目标文件,他依赖于objs内的

《linux c编程指南》学习手记2

第5章 使用make make寻找makefile的规则是在当前目录下依次查找3个文件----GNUmakefile文件,Makefile文件,makefile文件 第6章 进程控制 进程属性: 进程标识符 所占内存空间 相关文件描述符 安全信息 进程环境 信号处理 资源安排 同步处理 进程状态 system函数: 通过调用 fork exec waitpid函数完成,任何一个错误,都会导致system错误 本文转自博客园xingoo的博客,原文链接:<linux c编程指南>学习手记2,如需

《linux c编程指南》学习手记4

7.1 文件系统简介 7.1.1 文件 文件类型:普通文件.目录文件.链接文件.设备文件.管道文件 文件权限:r w x 访问权限:文件所有者.文件所有者同组用户.其他用户 7.1.2 索引节点 7.1.3 文件系统 树形层次结构系统,文件最终都归结到根目录/上 7.2 基于文件描述符的IO操作 7.2.1文件的创建.打开与关闭 1 文件的创建 create 2 文件的打开 open (文件操作不能保证都是成功的,因此文件操作都要进行检测,如果错误要终止程序) 3 文件的关闭 close 7.2

[网摘学习]Shell脚本编程学习入门:Shell编程基础

51cto的这篇文章不错,收藏一下:http://os.51cto.com/art/201109/294521.htm(版权归原作者所有) Shell脚本编程学习入门是本文要介绍的内容,我们可以使用任意一种文字编辑器,比如gedit.kedit.emacs.vi等来编写shell脚本,它必须以如下行开始(必须放在文件的第一行):   #!/bin/sh ... 注意:最好使用"!/bin/bash"而不是"!/bin/sh",如果使用tc shell改为tcsh,其

《Linux C编程从入门到精通》一第1章 Linux基础1.1 Linux的起源、发展和分类

第1章 Linux基础 Linux C编程从入门到精通 Linux是一套免费使用和自由传播的类UNIX操作系统,它已发展成为现今世界上最流行的一种操作系统.Linux不仅仅能在PC机上运行,随着嵌入式系统的发展,它已经被广泛地应用于各种场合. 1.1 Linux的起源.发展和分类 Linux C编程从入门到精通 Linux从1991年问世到现在已经有20多年的历史,它从一个架构简单的系统内核发展到了现在结构完整.功能丰富的多版本操作系统,本小节将介绍其起源发展和分类. 1.1.1 Linux的起

Linux网络编程入门

(一)Linux网络编程--网络知识介绍 Linux网络编程--网络知识介绍 客户端和服务端          网络程序和普通的程序有一个最大的区别是网络程序是由两个部分组成的--客户端和服务器端. 客户端         在网络程序中,如果一个程序主动和外面的程序通信,那么我们把这个程序称为客户端程序. 比如我们使用ftp程序从另外一         个地方获取文件的时候,是我们的ftp程序主动同外面进行通信(获取文件), 所以这个地方我们的ftp程序就是客户端程序.  服务端        

linux socket编程初认识

  学习是分享和合作式的! 转载请注明出处:http://blog.csdn.net/wdzxl198/article/details/10472999: 直接进入主题:           socket起源于Unix,而Unix/Linux基本哲学之一就是"一切皆文件",都可以用"打开open –> 读写write/read –> 关闭close"模式来操作.我的理解就是Socket就是该模式的一个实现,socket即是一种特殊的文件,一些socket

《Linux系统编程(第2版)》——第1章 入门和基本概念 1.1 系统编程

第1章 入门和基本概念 摆在你面前的是一本关于系统编程的书,你将在本书中学习到编写系统软件的相关技术和技巧.系统软件运行在系统的底层,与内核和系统核心库进行交互.常见的系统软件包括Shell.文本编辑器.编译器.调试器.核心工具(GNU Core Utilities)以及系统守护进程.此外,网络服务.Web服务和数据库也属于系统软件的范畴.这些程序都是基于内核和C库实现的,可以称为"纯"系统软件.相对地,其他软件(如高级GUI应用),很少和底层直接交互.有些程序员一直在编写系统软件,而