自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

DaLaoZi的专栏

Stay hungry,stay foolish.

  • 博客(12)
  • 问答 (1)
  • 收藏
  • 关注

原创 Linux C 字符串输入函数 gets()、fgets()、scanf() 详解

一、gets() 函数详解gets()函数用来从 标准输入设备(键盘)读取字符串直到 回车结束,但回车符('\n')不属于这个字符串。调用格式为:gets(str);其中str为字符串变量(字符串数组名或字符串指针)。gets(str) 函数与 scanf("%s", &str) 相似,但不完全相同,使用 scanf("%s", &str) 函数输入

2017-08-09 22:04:10 10808

原创 Makefile中的-Wall -O2 -Os -g等选项介绍

-Wall:选项可以打印出编译时所有的错误或者警告信息。这个选项很容易被遗忘,编译的时候,没有错误或者警告提示,以为自己的程序很完美,其实,里面有可能隐藏着许多陷阱。变量没有初始化,类型不匹配,或者类型转换错误等警告提示需要重点注意,错误就隐藏在这些代码里面。没有使用的变量也需要注意,去掉无用的代码,让整个程序显得干净一点。下次写Makefile的时候,一定加-Wall编译选项。-O0: 

2017-08-07 20:35:27 12725

原创 linux之getopt 函数详解

命令行参数解析函数 —— getopt()getopt()函数声明如下:#include int getopt(int argc, char * const argv[], const char *optstring);extern char *optarg;extern int optind, opterr, optopt;该函数的ar

2017-08-07 19:59:14 2808

原创 int argc 、char *argv[] 与 char **argv

char *argv[] 与 char **argv#include#includestring.h>int main(int argc,char *argv[])//同int main(int argc,char **argv){  char *str_test = "hello wang";  int i,j,len;  for(i=0;i)  {    pri

2017-08-07 18:50:53 1008

原创 C语言数据输入scanf( )和getchar( )

格式化输入函数scanf( )scanf( )功能:按照指定的格式读入键盘上输入的若干个任意类型的数据,存入到argument参数所指向的内存单元,函数返回值为读入并赋给argument的数据个数,出错则返回0。scanf( )使用形式:scanf("格式字符串",输入项首地址列表);scanf( )函数执行时将输入的数据流按指定格式转换为数据,存入相应的存储单

2017-08-05 20:22:37 1938 1

原创 C语言之数据输出printf( )和putchar( )

格式化输出函数printf( )printf( )功能:向系统指定输出设备按指定的格式输入任意个任意类型的数据,并返回实际输出的字符数。若出错,将返回负数。printf( )使用形式:printf("格式控制字符串",输出项列表);格式字符(以"%"引导):(1)d格式字符:用来输出十进制整数。%d,按整型数据的实际长度输出。%md,m为指定

2017-08-05 20:20:17 8745

原创 字符串与字符数组的区别

用字符数组和字符指针变量都可实现字符串的存储和运算。但是两者是有区别的。在使用时应注意以下几个问题:1.字符串指针变量本身是一个变量,用于存放字符串的首地址。而字符串本身是存放在以该首地址为首的一块连续的内存空间中并以‘\0’作为串的结束。字符数组是由于若干个数组元素组成的,它可用来存放整个字符串。2.对字符串指针方式,char *ps=”C Language”;可以写成char *p

2017-08-05 16:01:54 1294 1

原创 C结构体、C++结构体 和 C++类的区别

C结构体、C++结构体基本相同,C++类主要是方法的实现。结构体是数据类型的集合类是数据类型加方法的集合,基本如此,更注重方法。1.C的结构体和C++结构体的区别(1) C的结构体内不允许有函数存在,C++允许有内部成员函数,且允许该函数是虚函数。所以C的结构体是没有构造函数、析构函数、和this指针的。(2)C的结构体对内部成员变量的访问权限只能是public,而

2017-08-05 15:10:37 619 2

原创 【转】C/C++中static关键字作用总结

1.先来介绍它的第一条也是最重要的一条:隐藏。(static函数,static变量均可)当同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。举例来说明。同时编译两个源文件,一个是a.c,另一个是main.c。//a.cchar a = 'A'; // global variablevoid msg(){

2017-08-03 19:24:02 275

原创 c语言和c++中的&修饰符的区别

首先说明C语言没有引用这个概念,引用是c++里的,一般初学者写C语言程序都在vc里写的.cpp文件,那是c++的,所以它会有引用。解释一下引用 ,一个人可以有大名,小名,还有其他的名字,不管是什么名字,都是指的一个人,那么一个变量也可以有多个名字,不管叫什么,指向的都是同一块内存。在C语言中,当作取地址的时候,&是一个一元运算符,和! ~ * -等类似。作为按引用传递的时候,&不是运算符,

2017-08-03 15:15:52 436

原创 linux内存映射mmap

linux编程之内存映射一.概述                                                  内存映射是在调用进程的虚拟地址空间创建一个新的内存映射。内存映射分为2种:1.文件映射:将一个普通文件的全部或者一部分映射到进程的虚拟内存中。映射后,进程就可以直接在对应的内存区域操作文件内容!2.匿名映射:匿名

2017-08-02 21:56:14 492

原创 【转】Linux 中的/lib和/usr/lib目录区别

有区别的。/lib里面给的是root和内核所需so或者a之类的库文件,而/usr/lib是普通用户能够使用的。Linux的程序有两种模式,这个你应该知道,是用户模式和内核模式,和这个也是有关系的,不再冗述。 ================/lib和/usr/lib和/usr/local/lib的区别(zz)文章分类:操作系统简单说,/lib是内核级的,/usr/lib是系

2017-08-02 18:07:57 4009

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除