字符串倒序
把一个字符串倒序,如“abcd”倒序后变为“dcba”
#include <iostream> #include <fstream> #include <stdio.h> #include <stdlib.h> #include <string> #include <vector> #include <list> #include <deque> #include <ctime> #include <time.h> using namespace std; int main() { char *res = "dlrow olleh"; char *des = new char[strlen(res)+1]; //char *des = (char*)malloc(strlen(res)+1); char *s = &res[strlen(res)-1]; char *d = des; while(res != s) { *d++ = *s--; } *d++ = *s; *d = '\0'; printf(des); //printf("%sn",des); free(des); des = NULL; return 0; }
第一次直接用*des 操作 结果在释放内存的时候会有警告
后来才发现 如果你申请的 内存空间 开始 是 x 到 x+10 后来结束的时候 释放内存只能释放 x 而不能释放 其他位置的 如果你改变了这个指针的位置 就会出错