#include
char *my_strcpy(char *dest,const char *src)
{
char *ret = dest;//保存数组的首地址,下面的操作会改变dest的值
while((*dest = *src) != '\0')//将src数组的内容全部赋给dest,包括'\0',当'\0'拷贝过去之后拷贝完成即函数结束
{
src++;
dest++;...
分类:
其他好文 时间:
2015-04-22 00:41:14
阅读次数:
205
用字符数组和字符指针变量都可以实现字符串的存储和运算,但是两者是有区别的。在使用时,应注意以下几个问题:1) 字符串指正变量本身是一个变量,用于存放字符串的首地址。而字符串本身是存放在该首地址的一块连续的内存空间中并以“\0”作为字符串的结束。字符数组是由若干个数组元素组成的,它可用来存放整个字符串...
分类:
编程语言 时间:
2015-04-20 22:28:44
阅读次数:
295
指针:一个用来存储数据存储地址的变量。
int a=10; a变量里面存储的数据0 1按照int 的长度解析为数据
int *p=&a; p变量里面存储的数据0 1解析为地址,只是这个地址(这个地址是这段空间的首地址)标号的那段空间里面存储的是a的值,这里的p是给这段地址的取的名字用来给程序员看的,这里的a是给这段地址里面存储内容所取得名字来给程序员看的。...
分类:
其他好文 时间:
2015-04-19 19:33:07
阅读次数:
130
当我们使用一个变量(特别是指针)的时候肯定是要给他分配内存的,不然很容易造成错误。 分配内存的方式有两种: 1 声明时分配。比如 int a[10],分配给数组a 一个首地址和10*int的地址空间。 2 初始化系统自动分配内存。比如, char* s="hello world";编译器会根据初始化...
分类:
其他好文 时间:
2015-04-17 20:12:26
阅读次数:
106
参考书籍《C程序设计(第四版)》谭浩强
当指针遇上二维数组时,就常常老鼠,老虎,傻傻分不清楚了。小zz根据教材总结了以下几点:
例如:int a[3][4]={.......}
1. a[i] :指向i行0列元素地址;
2. &a[i]:指向i行首地址;
3. a+i:指向i行首地址;
4. *(a+i) :指向i行0列元素地址;
5. *(a+i)+j :指向i行j...
分类:
其他好文 时间:
2015-04-17 15:43:23
阅读次数:
189
int _tmain(int argc, _TCHAR* argv[])
{ char i[10] = { 0 }; printf("%d %d\n",i,sizeof(i)); printf("%d %d\n",&i,sizeof(&i)); printf("%d %d",&i[0],sizeof...
分类:
编程语言 时间:
2015-04-17 10:57:30
阅读次数:
202
下面的程序,因为存在指针类型的数据成员,需要能完成深复制的构造函数。请补充完整构造函数和析构函数(其他不必动)。其中,构造函数要完成下面三个任务:
(1)为各成员函数赋值,按照深复制原则,其中arrayAddr应该是为保存数据新分配的连续空间的首地址;
(2)MyArray(int *a, int n)中,要将a指向的数组中的数值,逐个地复制到新分配的arrayAddr指向的空间中;
(3)...
分类:
编程语言 时间:
2015-04-16 22:02:04
阅读次数:
179
#include int main(){ int a = 101; char ch = *(char *)&a; //*(char *)&a:含义就是先取a的首地址, 然后强制转换为char指针类型, 然后取该指针的值。 printf("%c\n", ch); system("pause"); re...
分类:
编程语言 时间:
2015-04-16 17:15:14
阅读次数:
132
【数组】 C语言中数组名表示该数组的起始地址,即给数组本身对应的值就是一个地址,而数组中的值就是从起始地址开始的不同的地址内的值。 如:char c[9]; //定义时的数组char c[5]中的c和运算时的c是一个含义,都是数组首地址 scanf("%s",c); printf("%d",c...
分类:
编程语言 时间:
2015-04-16 13:48:01
阅读次数:
155
【项目2-我的数组类】
下面的程序,因为存在指针类型的数据成员,需要能完成深复制的构造函数。请补充完整构造函数和析构函数(其他不必动)。其中,构造函数要完成下面三个任务:
(1)为各成员函数赋值,按照深复制原则,其中arrayAddr应该是为保存数据新分配的连续空间的首地址;
(2)MyArray(int *a, int n)中,要将a指向的数组中的数值,逐个地复制到新分配的arrayA...
分类:
编程语言 时间:
2015-04-15 09:38:38
阅读次数:
152