![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++基础
文章平均质量分 74
迷途小码
大数据及后台开发 python|scala|c|java|go
展开
-
关于length specifier
size_t定义了一个unsigned integer,但是具体所占用字节数依赖系统位数,如何才能可移植地打印size_t?答案是:%zu格式化字符串。示例:size_t val = get_the_value();printf("%zu",val);z是长度指定符(length specifier),表示参数长度是size_t的长度。英文说明:z --- A ...原创 2020-04-01 09:34:13 · 305 阅读 · 0 评论 -
字符编码 - 字符集和编码
一、什么是字符集?什么是编码? 字符(Character)是文字与符号的总称,包括文字、图形符号、数学符号等。 一组抽象字符的集合就是字符集(Charset)。 字符集常常和一种具体的语言文字对应起来,该文字中的所有字符或者大部分常用字符就构成了该文字的字符集,比如英文字符集。 一组有共同特征的字符也可以组成字符集,比如繁体汉字字符集、日文汉字字符集。 字符集的子集也是字符转载 2014-05-29 13:56:22 · 924 阅读 · 0 评论 -
字符编码 - GB2312简体中文编码表
code +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +A +B +C +D +E +FA1A0 、 。 · ˉ ˇ ¨ 〃 々 — ~ ‖ … ‘ ’A1B0 “ ” 〔 〕 〈 〉 《 》 「 」 『 』 〖 〗 【 】A1C0 ± × ÷ ∶ ∧ ∨ ∑ ∏ ∪ ∩ ∈ ∷ √ ⊥ ∥ ∠A1D0 ⌒ ⊙ ∫ ∮ ≡ ≌ ≈ ∽ ∝ ≠ ≮ ≯ ≤转载 2014-05-29 13:58:51 · 5487 阅读 · 0 评论 -
百度搜索查询参数
必备参数:wd--查询的关键词(Keyword)pn--显示结果的页数(Page Number),默认为10cl--搜索类型(Class),cl=3为网页搜索,cl=2为图片搜索ie(Input Encoding)可选参数rn--搜索结果显示条数(Record Number),取值范围在10--100条之间,缺省设置rn=10ie--查询输入文字的编码(Input En转载 2014-05-29 14:14:43 · 1423 阅读 · 0 评论 -
google url
REFER : >>------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------原创 2014-05-29 14:36:02 · 4059 阅读 · 0 评论 -
字符编码 - ASCII,Unicode和UTF-8
1. ASCII码我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串。每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte)。也就是说,一个字节一共可以用来表示256种不同的状态,每一个状态对应一个符号,就是256个符号,从0000000到11111111。上个世纪60年代,美国制定了一套字符编码,对英语字符与二进制位转载 2014-05-29 13:54:21 · 597 阅读 · 0 评论 -
Google查询参数含义
一个典型的从firefox来的google搜索url应该形如下列所示:http://www.google.com/search?q=tools&ie=utf-8&oe=utf-8&rls=org.mozilla:en-US:official&hl=en-US&client=firefox-a虽然这只不过是一个简单的搜索,但是google还是加了很多参数(已经用黑体字标出转载 2014-05-29 14:05:46 · 1652 阅读 · 0 评论 -
sscanf - scanf,sscanf高级用法
最近遇到了解析配置的问题,用正规表达式感觉大题小做,使用sscanf因只会用基本用法,感觉功能不够,上网搜了下,解析起来不费吹灰之力,代码也很简洁。原帖出处不详,网上到处是,我做了点修改名称:sscanf() - 从一个字符串中读进与指定格式相符的数据. 函数原型:Int sscanf( string str, string fmt, mixed var1, mixe转载 2014-07-04 11:20:46 · 1493 阅读 · 0 评论 -
sscanf - warning unsigned int format different type arg
Question:uint8_t u1=0xff,u2=0xff,u3=0xff,u4=0xff;char str[]="ab-cd";我开始使用如下代码:sscanf(str,"%x-%x",&u2,&u3);执行结果 u2 == ab,u3=cd; 但是:u1或u2(根据系统不同而不同,因为栈的增长方向)的值被改变,变为零。 所以这里发生了越界。转载 2014-07-04 11:38:42 · 1589 阅读 · 0 评论 -
printf - warning: long long int format, int64_t arg
#include #include int main(){ int64_t test = 16; # if __WORDSIZE == 64 printf("%ld\n", test); # else __extension__ printf("%lld\n", test); # endif return 0;}原创 2014-07-10 14:58:25 · 1969 阅读 · 0 评论 -
printf - 函式進階格式轉換說明
二進位轉為字元格式printf() 函式最主要的功能是將各種型態的變數內之資料以字元的格式顯示在螢幕上,例如:int ix=76;float fx=1.25e8;char cx = 'C';printf("ix=%d %x, fx=%f cx=%c %d %x",ix,ix,fx,cx,cx,cx);其列印結果如下:ix=76 4c, fx=125000转载 2014-07-15 14:57:43 · 652 阅读 · 0 评论 -
UTF-8编码的详细讲解
这篇文章说明了在 POSIX 系统 (Linux,Unix) 上使用 Unicode/UTF-8 所需要的信息. 在将来不远的几年里, Unicode 已经很接近于取代 ASCII 与 Latin-1 编码的位置了. 它不仅允许你处理处理事实上存在于地球上的任何语言文字, 而且提供了一个全面的数学与技术符号集, 因此可以简化科学信息交换. UTF-8 编码提供了一种简便而向后兼容的方法,转载 2014-08-06 15:05:23 · 3353 阅读 · 0 评论 -
前置++和后置++的区别
今天在阅读《google c++ 编程风格》的文档的时候,5.10. 前置自增和自减:有一句话引起了我的注意:对于迭代器和其他模板对象使用前缀形式 (++i) 的自增, 自减运算符.,理由是 前置自增 (++i) 通常要比后置自增 (i++) 效率更高。于是我查了查前置++和后置++的区别。注意:《more effective c++》条款8也专门叙述了问题。后来我发现,下面的文章基本转载 2014-09-05 14:56:21 · 1068 阅读 · 0 评论 -
C语言全局变量定义方法
今天调试系统的时候,需要定义几个全局位变量,定义好后一编译,发现错误一大堆,错误基本都是位变量定义时产生的。以前也定义过全局变量啊,但是先前怎么没错误?瞎折腾了一会最后还是发现问题出在细节上面了。以前只是侥幸没遇到而已。今天做个总结,以后再忘记了就回来直接查一下。 我们都知道定义在函数外部的变量就叫做全局变量,但是通常只有一个C文件和一个H文件的时候那样定义是不会出问题的。一个大的系统转载 2014-09-05 17:08:57 · 3222 阅读 · 0 评论 -
类对象和类指针的区别
比较全面的总结了类对象和类指针使用的不同,感谢原作者,转载地址:http://blog.csdn.net/qq527249973/article/details/5970301 如下程序:转载 2014-08-14 13:54:16 · 660 阅读 · 0 评论 -
C++类对象的复制-拷贝构造函数
对于普通类型的对象来说,他们之间的复制是很简单的,例如:int a = 10;int b =a;转载 2014-08-15 17:01:32 · 617 阅读 · 0 评论 -
sizeof的用法
本文主要包括二个部分,第一部分重点介绍在 VC 中,怎么样采用 sizeof 来求结构的大小, 以及容易出现的问题,并给出解决问题的方法,第二部分总结出 VC 中 sizeof 的主要用法。 1、 sizeof 应用在结构上的情况 请看下面的结构: struct MyStruct { double dda1; char dda; int type }; 对结转载 2016-03-24 11:04:29 · 465 阅读 · 0 评论 -
HBase RegionLoad获取Name乱码问题的源码分析与解决方式
版权声明:本文为博主原创文章,转载自http://blog.csdn.net/t894690230/article/details/53037708目录(?)[+]一、问题的产生通过RegionLoad可以获得一系列有关Region负载的详细信息,但是因为需要通过regionName与HRegionInfo中的regionName匹配,从而合并相转载 2016-12-25 22:34:50 · 716 阅读 · 0 评论 -
linux库文件编写入门
一、静态库的编写和使用1、概述静态库文件的扩展名一般为.a,其编写步骤很简单。⑴编写函数代码⑵编译生成各目标文件⑶用ar文件对目标文件归档,生成静态库文件.注意归档文件名必须以lib打头。 使用要点: ⑴在gcc的-i参数后加上静态库头文件的路径 ⑵在gcc的-l参数后加上库文件所在目录 ⑶在gcc的-l参数后加上库文件名,但是要去掉lib和转载 2013-07-18 11:03:36 · 1023 阅读 · 0 评论 -
eclipse_cpp 配置mingw
1.MinGW 5.1.6的安装首先下载,然后双击安装,过程如下:这一步如果你只想用Eclipse编译C++/C程序的话,只选上面三项即可,当然你可以都安装上。接下来就等着慢慢下载和安装吧,如果你的网速比较快的话,那么你是非常幸运的。2.MinGW环境变量的设置这个网上介绍的也很多,主要是设置path变量(假设MinGW安装在D: /MinGW/bin目录下),设置如下原创 2014-05-13 09:26:52 · 906 阅读 · 0 评论 -
C++中 int 和 float 转为不同位数的string的方法
1.)%04d:强制整型显示为四位数,不足的用0补齐,如1显示为00012.)浮点数使用格式符"%f"控制,默认保留小数点后6 位数字,比如:sprintf(s, "%f", 3.1415926); //产生"3.141593"但有时我们希望自己控制打印的宽度和小数位数,这时就应该使用:"%m.nf"格式,其中m 表示打印的宽度,n 表示小数点后的位数。比如:sprin转载 2014-05-12 16:16:39 · 2978 阅读 · 0 评论 -
编译器定义的宏
__cplusplus __STDC____LINE__ __FILE__ __FUNCTION____TIME__ __DATE__原创 2010-09-17 09:16:00 · 635 阅读 · 0 评论 -
浅谈Visual C++中的预编译
一、预编译头文件说明 所谓头文件预编译,就是把一个工程(Project)中使用的一些MFC标准头文件(如Windows.H、Afxwin.H)预先编译,以后该工程编译时,不再编译这部分头文件,仅仅使用预编译的结果。这样可以加快编译速度,节省时间。 预编译头文件通过编译stdafx.cpp生成,以工程名命名,由于预编译的头文件的后缀是“pch”,所以编译结果文件是projectna转载 2013-07-18 11:01:05 · 980 阅读 · 0 评论 -
Const,Const函数,Const变量,函数后面的Const
看到const 关键字,C++程序员首先想到的可能是const常量。这可不是良好的条件反射。如果只知道用const定义常量,那么相当于把火药仅用于制作鞭炮。const更大的魅力是它可以修饰函数的参数、返回值,甚至函数的定义体。const 是constant的缩写,“恒定不变”的意思。被const修饰的东西都受到强制保护,可以预防意外的变动,能提高程序的健壮性。所以很多C++转载 2013-07-18 10:56:20 · 604 阅读 · 0 评论 -
int long 字节数
int类型比较特殊,具体的字节数同机器字长和编译器有关。如果要保证移植性,尽量用__int16 __int32 __int64吧,或者自己typedef int INT32一下。C、C++标准中只规定了某种类型的最小字节数(防止溢出)64位指的是cpu通用寄存器的数据宽度是64位的。====================================================转载 2013-07-18 10:58:35 · 1113 阅读 · 0 评论 -
STL vector 容器介绍
STL vector 容器介绍A Presentation of the STL Vector Container (ByNitron)翻译 masterlee介绍std::vector,并且讨论它在STL中的算法和条件函数remove_if()。 Download Console Demo - 6.19 KbDownload MFC Demo - 14.6 Kb转载 2013-07-22 10:13:59 · 679 阅读 · 0 评论 -
linux多进程多线程互斥同步例子
进程1#include #include #include #include #include #include #define DEBUG 1#define SHARE_KEY 0x1234#define THREAD_NUM 4typedef struct{ pthread_mutex_t lock; pthread_cond_t cond; char m转载 2013-10-23 09:45:34 · 639 阅读 · 0 评论 -
C/C++混合编程(二)
假设某个C函数的声明如下:void foo(int x, int y);该函数被C编译器编译后在库中的名字为_foo,而C++编译器则会产生像_foo_int_int之类的名字用来支持函数重载和类型安全连接。由于编译后的名字不同,C++程序不能直接调用C函数。C++提供了一个C连接交换指定符号extern“C”来解决这个问题。例如:extern “C”{ void foo转载 2013-12-18 16:52:38 · 752 阅读 · 0 评论 -
C/C++混合编程(一)
一、如何在C++中调用已经被编译好的C函数?下面的小例子展示了这个过程:1. 假设某C函数如下定义/* file foo.c*/#include int add(int x, int y){ return x + y;}编译并生成DLL:gcc -fpic –c foo.cgcc –shared -o foo.dll foo.o2. 在C++中调用转载 2013-12-18 16:49:09 · 763 阅读 · 0 评论 -
memmove 和 memcopy
1.memmove函数原型:void *memmove(void *dest, const void *source, size_t count)返回值说明:返回指向dest的void *指针参数说明:dest,source分别为目标串和源串的首地址。count为要移动的字符的个数函数说明:memmove用于从source拷贝count个字符到dest,如果目标区域和源区域有重叠的转载 2014-03-17 15:22:03 · 557 阅读 · 0 评论 -
多进程vs多线程(一)
作者: dingshi发表时间: 2010年7月9日本文链接: http://www.soft-bin.com/html/2010/07/09/%e5%a4%9a%e8%bf%9b%e7%a8%8bvs%e5%a4%9a%e7%ba%bf%e7%a8%8b%ef%bc%8c%e4%b8%80%e4%b8%aa%e9%95%bf%e6%9c%9f%e7%9a%84%e4%ba%89%e8%ae%转载 2014-01-16 16:24:33 · 837 阅读 · 0 评论 -
多进程vs多线程(二)
一个进程最基本的内容:PCB、程序段、数据段多进程、多线程、多任务(windows vs linux) 一个进程最基本的内容:PCB、程序段、数据段 一个线程包含的内容:线程ID,当前指令指针(PC),寄存器集合、堆栈。 线程是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点在运行中必不可少的资源,但它可与同转载 2014-01-16 16:25:42 · 996 阅读 · 0 评论 -
二进制、八进制、十进制与十六进制
二进制、八进制、十进制与十六进制 一、 进制的概念在计算机语言中常用的进制有二进制、八进制、十进制和十六进制,十进制是最主要的表达形式。 对于进制,有两个基本的概念:基数和运算规则。基数:基数是指一种进制中组成的基本数字,也就是不能再进行拆分的数字。二进制是0和1;八进制是0-7;十进制是0-9;十六进制是0-9+A-F(大小写均可)。也可以这样简单记忆,假设是n进制的话,转载 2014-05-08 11:29:26 · 5700 阅读 · 1 评论 -
ASCII码对照表
ASCII(American Standard Code for Information Interchange,美国信息互换标准代码,ASCⅡ)是基于拉丁字母的一套电脑编码系统。它主要用于显示现代英语和其他西欧语言。它是现今最通用的单字节编码系统,并等同于国际标准ISO/IEC 646。 ASCII第一次以规范标准的型态发表是在1967年,最后一次更新则是在1986年,至今为止共定义了12转载 2014-05-08 17:51:00 · 827 阅读 · 0 评论 -
字符串格式转化
Question:有一段字符串char* a,如“6f36323d313536303030......”其实它隐含着十六进制信息。比如3f对应于char是‘o’,对应于整形是63,其ascii是6f。36对应char是‘6’,对于整形是54,其ascii是36。现要将这个字符串压缩成另一个字符串char* b;如上面的char* b应该是"o62=156000......",请问具体怎转载 2014-05-09 18:35:06 · 695 阅读 · 0 评论 -
Integer.parseInt(s, 16) (Java) in C
Use sscanf function, like sscanf(s, "%4x", &x).转载 2014-05-09 18:36:41 · 4424 阅读 · 0 评论 -
strdup() - 复制字符串
头文件:#include 定义函数:char * strdup(const char *s);函数说明:strdup()会先用maolloc()配置与参数s 字符串相同的空间大小,然后将参数s 字符串的内容复制到该内存地址,然后把该地址返回。该地址最后可以利用free()来释放。返回值:返回一字符串指针,该指针指向复制后的新字符串地址。若返回NULL 表示内存不足。转载 2014-05-16 17:33:44 · 973 阅读 · 0 评论 -
const char*, char const* and char *const
const char*, char const*, char*const的区别问题几乎是C++面试中每次都会有的题目。事实上这个概念谁都有只是三种声明方式非常相似很容易记混。Bjarne在他的The C++ Programming Language里面给出过一个助记的方法:把一个声明从右向左读。char * const cp; ( * 读成 pointer to )c转载 2014-05-12 17:00:40 · 588 阅读 · 0 评论 -
#if 0
#if 0#endif之间的代码相当于注释原创 2010-09-02 10:40:00 · 623 阅读 · 0 评论