linux学习与c编程2

 cc -S c.c          --编译c.c 文件,会生成 c.s的汇编代码文件

 修改linux计算机名,修改文件,重启 :su root 权限
 /etc/hostname
 /etc/hosts

 包含基本数据类型的struct中,sizeof,占4的倍数个字节。
 位模式不占4的倍数字节:(8位为一个字节)
 struct mode {
 unsigned char ur:1;
 unsigned char uw:1;
 unsigned char ux:1;
 unsigned char gr:1;
 unsigned char gw:1;
 unsigned char gx:1;
 unsigned char or:1;
 unsigned char ow:1;
 unsigned char ox:1;//后面指定位数
 };
 struct mode m={1,1,0,1,0,0,1,0,0};

 char * toChinese(char c)//数字转换为文字表示
 {//局部变量返回地址,因数据已释放,使用地址时会报错
    static char num[10][5]={"零","一","二","三","四","五","六","七","八","九"};
	return num[c-'0'];
 }
 char toUpper(char c)
 {
 return (c-'a'+'A');
 }
 //对寄存器变量取地址是错误的
 char * p=toChinese('1');
 printf("%s\n",p);

 void swap(int a,int b)
 {
 int t=a;
 a=b;
 b=t;
 }

 #include<stdarg.h>
 int max(int n,...)  //多个可变参数,n为具体参数个数
 {
  va_list v;
  va_start(v,n);//开始
  int i;
  int maxvalue=va_arg(v,int);//取第一个参数
  for(i=1;i<n;i++)
  {
    int data=va_arg(v,int);//循环取参数
	if(data>maxvalue) maxvalue=data;
  }
  va_end(v);//结束
  return maxvalue;//返回最大值
 }
时间: 2024-10-24 15:57:14

linux学习与c编程2的相关文章

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编程1

sudo 在没有权限时,运行在命令前. 运行文件要用文件绝对路径,当前路径 要用 ./文件名 查看当前shell 用:ps 进入另一个 shell,直接输入shell的名字,如:ksh/tcsh/sh/bash/ 退出一个shell 用 exit 切换shell,如: exec tsh 第二行输入,但不执行,用 ctrl+c 查看当前目录:pwd cd /dir/dir --转到其它目录 cd ~ 或 cd --转到主目录 cd ~用户名 --转到其它用户的主目录 telet ip --连接运程

嵌入式Linux学习路线

嵌入式学习是一个循序渐进的过程,如果是希望向嵌入式Linux方向发展的话,关于这个方向,我认为大概分3个阶段: 1.嵌入式linux上层应用,包括QT的GUI开发 2.嵌入式linux系统开发 3.嵌入式linux驱动开发 嵌入式目前主要面向的几个操作系统是,LINUX,WINCE.VxWorks等等 Linux是开源免费的,而且其源代码是开放的,更加适合我们学习嵌入式. 你可以尝试以下路线: (1) C语言是所有编程语言中的强者,单片机.DSP.类似ARM的种种芯片的编程都可以用C语言搞定),

怎样学习Scala泛函编程

     确切来说应该是我打算怎么去学习Scala泛函编程.在网上找不到系统化完整的Scala泛函编程学习资料,只好把能找到的一些书籍.博客.演讲稿.论坛问答.技术说明等组织一下,希望能达到学习目的.关于Scala语言的教材在国内网上还是比较容易找到的:可以到Scala语言官方网站,国内Scala社区网站这些地方去看看了解一下:深一点的参考一下在路上,里面包括了一些泛函编程的概念性内容.     学习编程语言除了语法语意之外还必须透彻了解编程语言的数据结构(data structure):数据结

phpmyadmin: linux学习篇-使用apt-get方式安装LAMP包括phpmyadmin

linux学习篇-使用apt-get方式安装LAMP包括phpmyadmin    对于想学linux的朋友来说,在虚拟机上装上linux系统是不二选择.至于哪种linux好用,萝卜白菜,各有所爱.我喜欢ubuntu,虚拟机上安装的是最新的ubuntu11.10    搭建LAMP环境有两种方式可以选择,一是用apt-get方式安装,这个适合初学者.有点是安装简单,不需要做什么配置就可以使用.缺点是自主性太差,安装目录啊啥的都是默认的,不方便自己管理,也不敢轻易的移动位置.二是用编译安装的方法.

关于linux c语言多线程编程的问题

问题描述 关于linux c语言多线程编程的问题 /* 以生产者和消费者模型问题来阐述Linux线程的控制和通信你 生产者线程将生产的产品送入缓冲区,消费者线程则从中取出产品. 缓冲区有N个,是一个环形的缓冲池. */#include #include #define BUFFER_SIZE 16 struct prodcons{ int buffer[BUFFER_SIZE];/*实际存放数据的数组*/ pthread_mutex_t lock;/*互斥体lock,用于对缓冲区的互斥操作*/

Linux学习步骤

1.Linux 基础 安装Linux操作系统 Linux文件系统 Linux常用命令 Linux启动过程详解 熟悉Linux服务能够独立安装Linux操作系统 能够熟练使用Linux系统的基本命令 认识Linux系统的常用服务安装Linux操作系统 Linux基本命令实践 设置Linux环境变量 定制Linux的服务 Shell 编程基础使用vi编辑文件 使用Emacs编辑文件 使用其他编辑器 2.Shell 编程基础 Shell简介 认识后台程序 Bash编程熟悉Linux系统下的编辑环境 熟

Linux GCC 64位编程技巧

                                 linux GCC 64位编程技巧 64位系统的优势? 既然要采用64位系统,首先要知道64位系统的优势所在.对于技术人员来说,完全没有必要去看那些厂家拿出的厚厚的说明书.或者某个研究机构抛出的一堆的数字,64位系统的优势总结起来很简单:内存大.速度快! 内存大 与32位系统相比,64位系统的地址空间大大增大,达到了18PB,18PB究竟是多大呢?说出来有点吓人:4G内存的40亿倍!这么大的空间,不要说内存了,就是整个磁盘的数据都

linux编程-关于Linux的三个编程题,想了半天毫无头绪,感觉Linux编程好复杂。求大家帮助帮助我,谢谢。

问题描述 关于Linux的三个编程题,想了半天毫无头绪,感觉Linux编程好复杂.求大家帮助帮助我,谢谢. 1:子进程每隔一秒向文件写入信息,父进程每隔三秒读出子进程所写的信息并输出到屏幕. 2:模拟shell,设计一个交互式命令处理程序,注意对命令参数和环境参数的处理. 3:编写一个守护进程,实现功能为:每隔一秒,向当前目录下的hello文件里写入一行helloworld. 解决方案 Linux设备驱动编程之复杂设备驱动25岁了,是学linux运维还是编程好呢?求指点下 .. 解决方案二: 楼