如果用C语言,我要申请一个空间来存放数据,要这么做啊
如果用C语言,我要申请一个空间来存放数据,要这么做啊
请采纳我的答案。
//首先要包含头文件。 //假设我们要申请一个单位的整型数据: int *ptr=null; ptr=(int *)malloc(sizeof(int)); if(ptr==NULL){exit(1)} //这样就ptr就指向了新申请的整型单位了。
可以用*ptr对指针指向的空间进行赋值了。 free(ptr); //用完了记得要释放掉,不然会内存泄漏。 //下面几点是一个高手总结的,你也可以看看 ================================================== 关于函数使用需要注意的一些地方: 1、申请了内存空间后,必须检查是否分配成功。
2、当不需要再使用申请的内存时,记得释放;释放后应该把指向这块内存的指针指向NULL,防止程序后面不小心使用了它。 3、这两个函数应该是配对。如果申请后不释放就是内存泄露;如果无故释放那就是什么也没有做。释放只能一次,如果释放两次及两次以上会出现错误(释放空指针例外,释放空指针其实也等于啥也没做,所以释放空指针释放多少次都没有问题)。
4、虽然malloc()函数的类型是(void *),任何类型的指针都可以转换成(void *),但是最好还是在前面进行强制类型转换,因为这样可以躲过一些编译器的检查。
C的标准函数是malloc/relloc/free 而本身内存申请行为是系统相关的,和语言本身无关。C函数也是调用对应的操作系统函数。
问:挺简单的一C函数,不过我是初学者,暂时还不会写,请好心人多多帮忙!
答:int mystrlen(char *str) { int n = 0; while (*str) { n++; str++;} return n; } voi...详情>>