首页 > 代码库 > 2017/03/06学习笔记
2017/03/06学习笔记
char *p="abcdef";//在栈上开辟4字节空间存放指针p,在常量区开辟7空间存放字符串常量"abcdef",并将字符串常量的地址赋值给指针p.所以p指向的内存空间不能被修改
#include <stdio.h> //字符串反转(普通) void inverse(char *p){ int len = strlen(p); int i=0,j=len-1; while(i<j){ char tmp = p[i]; p[i] = p[j]; p[j] = tmp; i++; j--; } } int main(void){ char *s="123456789"; inverse(s); printf("%s\n",s); return 0; } //字符串反转(递归) #include <stdio.h> #include <string.h> void myinverse(char *p,char *dest){ if(p==NULL || dest == NULL){ return; } if(*p==‘\0‘){ return; } myinverse(p+1,dest); strncat(dest,p,1); } int main(void){ char *s="123456789"; char dest[100] = {0}; //这里需要初始化为0; myinverse(s,dest); printf("%s\n",s); return 0; }
在代码中
int a;
int a=100;
//是可以编译通过,并运行的.
char buf[3]="abc";//数组越界
const基础知识
const int a;
int const b;//这两句定义是一样的,代表常量
const char *c;//定义一个指针,这个指针指向一个常量
char * const d;//定义一个常量指针.
const char * const e;//定义一个常量指针,并且指向一个常量.
2017/03/06学习笔记
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。