C语言
粒米LALA
一枚风华绝代的帅哥
展开
-
realloc的使用误区
realloc的使用误区C语言 realloc() 函数位于 stdlib.h 头文件中,原型为: void *realloc(void *ptr, size_t size);realloc() 会将 ptr 所指向的内存块的大小修改为 size,并将新的内存指针返回。设之前内存块的大小为 n,如果 size < n,那么截取的内容不会发生变化,如果 size > n...转载 2018-11-13 17:49:16 · 394 阅读 · 0 评论 -
malloc函数申请的char内存用strlen得出的长度比预期值大?
这段代码的功能是创建一个长度为2的字符串数组:char* CreateArr(){ char *new_arr = NULL; void *test_arr = malloc(2 * sizeof(char)); if (!test_arr) { printf("ERROR!"); exit(0); } else ...原创 2018-11-14 00:32:45 · 1830 阅读 · 2 评论 -
const放在不同位置的不同含义
const放在不同位置的不同含义一、类型说明符前(一)const char* p; //定义的是一个指向字符型常量的指针变量,const的对象是char应用举例:1、指向单个字符c,此时无法通过指针来修改c,但是仍然可以通过c本身来修改cchar c = ‘a’;p = &c;printf("%c", *p);*p=’b’; // 是错误的,程序编译不通...原创 2019-05-28 20:59:51 · 2135 阅读 · 0 评论 -
C++随机数的产生及rand()函数的使用
一、C++程序代码#include <stdlib.h>#include <time.h>#include <iostream>using namespace std;int main(){ srand((unsigned int)time(0)); //使用系统时间来初始化种子// srand((unsigned int)getpid())...原创 2019-05-31 20:58:05 · 835 阅读 · 0 评论 -
二维数组及其指针
之前一直误以为二维数组的指针是这样定义的:char a[5][10];char** p = a;今天才发现根本没法过编译,这才搜了下资料,缕了下正确的定义方法:char (*p)[10] = a;但是这种定义方式限死了列数,如果想要用同一个指针在不同时候指向不同列数的二维数组时就不适用了,在此时食用方式应该是酱紫的:char *p = a[0];//指向第一行的首地址...原创 2019-06-28 11:01:42 · 269 阅读 · 0 评论 -
数组的定义,初始化和使用,C语言数组详解
数组的定义,初始化和使用,C语言数组详解一维数组初始化一维数组的初始化可以使用以下方法实现:1) 定义数组时给所有元素赋初值,这叫“完全初始化”。例如:int a[5] = {1, 2, 3, 4, 5};通过将数组元素的初值依次放在一对花括号中,如此初始化之后,a[0]=1;a[1]=2;a[2]=3;a[3]=4;a[4]=5,即从左到右依次赋给每个元素。需要注意的是,初始...转载 2019-07-05 22:36:50 · 1282 阅读 · 0 评论