
C/C++
Jymn_Chen
这个作者很懒,什么都没留下…
展开
-
C/C++中如何精确计时
给程序计时对于程序员来说实在是太重要了,在windows上的那个clock()实在是不够精确,精度只有10ms,真让人难过。研究了下windows下使用C、C++计时的函数,给大家分享下。主要就是两个函数的使用。我先把一段可以运行的代码贴出来,然后讲讲这两个函数。#include #include int main(int argc, char **argv)转载 2013-10-07 13:48:39 · 2818 阅读 · 0 评论 -
字符串循环右移
字符串循环右移解法:根据题意,编写的函数能把字符串循环右移n位。例如字符串“abcdefghi”,如果n=2,移位后是“hiabcdefg”。(1)先翻转前段“gfedcba hi”,(2)再翻转后段“gfedcba ih”(3)最后翻转整个“hi abcdefg”,得到想要的结果。下面是c语言的指针操作代码(略改动):#include #incl转载 2014-05-08 23:03:46 · 1351 阅读 · 0 评论 -
char str[] 和 char *str 的区别
[cpp] view plaincopychar* get_str(void) { char str[] = {"abcd"}; return str; } char str[] = {"abcd"};定义了一个局部字符数组,尽管是数组,但它是一个局部变量,返回它的地址肯定是一个已经释放了的空间的地转载 2014-05-08 20:19:44 · 1021 阅读 · 0 评论 -
sizeof和strlen
关于sizeof和strlen的一些测试结果记录。原创 2014-05-08 20:47:01 · 1055 阅读 · 0 评论 -
C/C++简单知识点
代码:#include using namespace std;int main() { printf("%4s\n", "Hello World"); printf("%7.4s\n", "Hello World"); return 0;}运行jie原创 2014-05-04 16:35:10 · 816 阅读 · 0 评论 -
百度笔试题:malloc/free与new/delete的区别
相同点:都可用于申请动态内存和释放内存不同点:(1)操作对象有所不同。malloc与free是C++/C 语言的标准库函数,new/delete 是C++的运算符。对于非内部数据类的对象而言,光用maloc/free 无法满足动态对象的要求。对象在创建的同时要自动执行构造函数, 对象消亡之前要自动执行析构函数。由于malloc/free 是库函数而不是运算符,不在编译器控制权限之内转载 2014-05-04 14:36:10 · 1079 阅读 · 0 评论 -
构造函数的初始化列表
首先,运行下图中的C++代码,输出是什么?[cpp] view plaincopyclass A { private: int n1; int n2; public: A(): n2(0) , n1(n2 + 2) { } void Print(转载 2014-05-04 16:02:34 · 991 阅读 · 1 评论 -
互换两个变量,不使用中间变量
第一种方法:a=a+b;b=a-b;a=a-b; 代码如下: [cpp] view plaincopy#include "stdio.h" int main(void) { int a,b; printf("请输入两个变量a和b:/n"); scanf("%d %d",&a,&b); printf("a和b转载 2014-05-04 15:29:38 · 1313 阅读 · 0 评论 -
free(NULL)和操作NULL指向的数据
基于GNU99开发原创 2014-04-16 00:21:31 · 6512 阅读 · 0 评论 -
C++ 二维数组动态创建和内存释放
最近做个C++实验用到了二维数组,现在做下笔记,创建动态二维数组: // 动态创建二维数组array[row][column] int **array; array = new int *[row]; for(int i = 0; i < row; i++) array[i] = new int[column];释放内存: // 释放内存 for(int原创 2013-12-18 18:09:48 · 5889 阅读 · 2 评论 -
delete a和delete []a 的分别
delete a和delete [] a是有区别的 delete a释放a所指的内存,如果a是类对象,还会调用a的析构函数 delete [] a释放a所指数组的内存,如果a是类对象,分别调用每个数组元素a[i]的析构函数转载 2013-12-18 18:13:47 · 2348 阅读 · 0 评论 -
c++/c 产生随机数(平均分布)
计算机的随机数都是由伪随机数,即是由小M多项式序列生成的,其中产生每个小序列都有一个初始值,即随机种子。(注意: 小M多项式序列的周期是65535,即每次利用一个随机种子生成的随机数的周期是65535,当你取得65535个随机数后它们又重复出现了。) c++/c的随机函数 rand() 与srand()rand()和srand(),所在的头文件是stdlib.hsr转载 2013-11-27 20:26:06 · 5902 阅读 · 0 评论 -
C/C++ 各种计时函数总结
本文对Windows平台下常用的计时函数进行总结,包括精度为秒、毫秒、微秒三种精度的5 种方法。分为在标准C/C++下的二种time()及clock(),标准C/C++所以使用的time()及clock()不仅可以用在Windows 系统,也可以用于Linux系统。在Windows系统下三种,使用Windows提供的API接口timeGetTime()、 GetTickCount()及QueryP转载 2013-10-07 15:53:02 · 4988 阅读 · 0 评论 -
numeric_limits::max()和windows.h冲突的解决方法
numeric_limits::max()和windows.h冲突的解决方法:为numeric_limits::max()加上括号。原创 2013-10-07 15:32:16 · 4478 阅读 · 0 评论 -
C++中的c_str函数
const char *c_str(); c_str()函数返回一个指向正规C字符串的指针, 内容与本string串相同. 这是为了与c语言兼容,在c语言中没有string类型,故必须通过string类对象的成员函数c_str()把string 对象转换成c中的字符串样式。 注意:一定要使用strcpy()函数 等来操作方法c_str()返回的指针 比如:最好不要这样: char* c; stri转载 2014-07-15 17:20:01 · 1377 阅读 · 0 评论