易截截图软件、单文件、免安装、纯绿色、仅160KB

C标准库源码解剖(10):区域设置函数locale.h

    国家、文化和语言规则集称为区域设置,locale.h头文件中定义了区域设置相关的函数。setlocale函数用于设置或返回当前的区域特性,localeconv用于返回当前区域中的数字和货币信息(保存在struct lconv结构实例中)。setlocale的第一个实参指定要改变的区域行为类别,预定义的setlocale类别有:
    LC_ALL:所有行为。
    LC_COLLATE:strcoll和strxfrm函数的行为。
    LC_CTYPE:ctype.h中的字符串处理函数行为。
    LC_MONETARY:localeconv返回的币值信息。
    LC_NUMERIC:localeconv返回的小数点和非币值信息。
    LC_TIME:strftime函数的行为。
    locale.h中内容如下:
/* ISO C99 Standard: 7.11 本地化 <locale.h> */
#ifndef _LOCALE_H
#define _LOCALE_H 1
#include <features.h>
#define __need_NULL
#include <stddef.h>
#include <bits/locale.h>
__BEGIN_DECLS
/* 下面是setlocale第一个实参可能的值。代码假设LC_*宏的最小值为0 */
#define LC_CTYPE __LC_CTYPE
#define LC_NUMERIC __LC_NUMERIC
#define LC_TIME __LC_TIME
#define LC_COLLATE __LC_COLLATE
#define LC_MONETARY __LC_MONETARY
#define LC_MESSAGES __LC_MESSAGES
#define LC_ALL __LC_ALL
#define LC_PAPER __LC_PAPER
#define LC_NAME __LC_NAME
#define LC_ADDRESS __LC_ADDRESS
#define LC_TELEPHONE __LC_TELEPHONE
#define LC_MEASUREMENT __LC_MEASUREMENT
#define LC_IDENTIFICATION __LC_IDENTIFICATION
__BEGIN_NAMESPACE_STD
/* 获取数字和货币记号的结构 */
struct lconv
{
/* 数字(非币值)信息 */
char *decimal_point; /* 数字的小数点号 */
char *thousands_sep; /* 数字的千分组分隔符 */
/* 每个元素为相应组中的数字位数,索引越高的元素越靠左边。一个值为CHAR_MAX的元素表示没有更多
的分组了。一个值为0的元素表示前面的元素能用在靠左边的所有分组中 */
char *grouping; /* 数字分组分隔符 */
/* 货币信息 */
/* 前面的三个字符ISO 4217中规定的货币符号,第四个字符是分隔符,第五个字符是'\0' */
char *int_curr_symbol;
char *


相关文档:

c 语言中的static

1. static 变量
静态变量的类型 说明符是static。 静态变量当然是属于静态存储方式,但是属于静态存储方式的量不一定就是静态变量。 例如外部变量虽属于静态 存储方式,但不一定是静态变量,必须由 static加以定义后才能成为静态外部变量,或称静态全局变量。
2. 静态局部变量
静态局部变量属于静态存储方式,它具有以下 ......

c 标准输入输出

1.1.1 格式化输入输出函数
Turbo C2.0 标准库提供了两个控制台格式化输入、 输出函数printf( ) 和
scanf(), 这两个函数可以在标准输入输出设备上以各种不同的格式读写数据。
printf()函数用来向标准输出设备(屏幕)写数据; scanf() 函数用来从标准输入
设备(键盘)上读数据。下面详细介绍这两个函数的用法。
一、pr ......

C中CONST的使用

const是一个C语言的关键字,它限定一个变量不允许被改变。使用const在一定程度上可以提高程序的健壮性,另外,在观看别人代码的时候,清晰理解const所起的作用,对理解对方的程序也有一些帮助。
  虽然这听起来很简单,但实际上,const的使用也是c语言中一个比较微妙的地方,微妙在何处呢?请看下面几个问题。
  问题 ......

Python 中的函数调用(类似c中的使用函数入口地址)

def login():
    print 'login'
def logout():
    print 'logout'
controllers = {
'in': login,                              ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号