C/C++ 下标有效性检查
C/C++是不检查数组下标是否越界的。
不检查下标是否越界可以有效提高程序运行的效率,因为如果你检查,那么编译器必须在生成的目标代码中加入额外的代码用于程序运行时检测下标是否越界,这就会导致程序的运行速度下降,所以为了程序的运行效率,C/C++才不检查下标是否越界。
C/C++如果数组下标越界了,那么它会自动接着那块内存往后写。想了一下明白了,以前说不允许数组下标越界,并不是因为界外没有存储空间,而是因为界外的内容是未知的。也就是说如果界外的空间暂时没有被利用,那么我们可以占用那块内存,但是如果之前界外的内存已经存放了东西,那么我们越界过去就会覆盖那块内存,导致错误的产生。。。
相关文档:
http://www.cppblog.com/jacky2019/archive/2007/05/17/24269.html
c++中嵌入python入门1
本人是用vc2003+python2.5学习的,其它的也应该差不了多少
0. 坏境设置
把python的include/libs目录分别加到vc的include/lib directories中去。另外,由于python没有提供debug lib,体地说,就是没有提供python25_d.lib了。你可 ......
最近有个项目需要在UNIX下用C做,很久没用过C了,发现些问题容易搞错。
这个问题很容易搞错,并导致很多问题,需要强调的是fread函数返回的并不是字节数。
realRead = fread(buf,item,count,fp) (每次读item大小的数据块,分count次 ......
1. memcpy函数的实现
首先对这个函数做一些说明。
#include <string.h>
void *memcpy(void *to, const void *from, size_t count)
函数memcpy()从from指向的数组向to指向的数组复制count个字符。如果两数组重叠,不定义函数的行为。
在C99中,to和from由restrict修饰。
先来看看微软的实现:
void * __cdecl m ......
1.MFC中的方法:(C++) CFileStatus status;
CFile::GetStatus("D:\\test.txt",status);
long lSizeOfFile;
lSizeOfFile = status.m_size; lSizeOfFile的值就是D:\\test.txt文件的大小 2.标准C获得文件大小的5种方法
(注意:"__FILE__"指的是当前文件,你可以改为有效路径的目标文件,比如"D:\\test.tx ......