当前位置: 首页 > news >正文

营口网站建设开发制作dw成品网站成品视频教学

营口网站建设开发制作,dw成品网站成品视频教学,著名vi设计公司,住房住房和城乡建设部网站1.sizeof 关于sizeof我们是经常使用的#xff0c;所以使用方法就不需要提及了#xff0c;这里我们需要注意的是#xff0c;sizeof 后面如果是表达式可以不用括号#xff0c;并且sizeof实际上不参与运算#xff0c;返回的是内容的类型大小#xff08;size_t类型#xff0… 1.sizeof 关于sizeof我们是经常使用的所以使用方法就不需要提及了这里我们需要注意的是sizeof 后面如果是表达式可以不用括号并且sizeof实际上不参与运算返回的是内容的类型大小size_t类型------sizeof是在编译时就确定结果的 2.scanf/fscanf/sscanf 与 printf/fprintf/sprintf 对于每一个学习C、C的同学来说区分上面的内容非常重要         当然实际上还有snprintf这样可以读入读出n个字节的输入输出函数!!! 可以适当留意下输出的对齐符-左右对齐 3.指针重点         指针可以说是我们C、C程序员最重要的知识了所以我们必须要熟悉其全部内容         首先指针变量的大小与指针指向的类型无关只与编译器环境有关x86/x64 区分指针数组/数组指针         指针数组表示的是一个数组但是数组的元素都是指针         数组指针表示一个指针但是指向的是一个数组 联系知识         sizeofarr/arr(arr是一个数组表示的是对数组的整体操作而非对数组的某个元素操作 函数指针         规则         指向的函数返回类型  *函数名指向的函数的参数类型与个数         例如 int Add(int x,int y) {return xy; }//需要注意的是函数名可以表示函数地址int main() {int (*pf) (int,int) Add;//定义一个函数指针指向Add函数//进行相关的操作return 0; } 4.库函数实现  strlen实现 //参数是const注意统计的是\0之前的字符数量 size_t strlen(const char* str) {size_t ans 0;while (*str){ans;str;}return ans; }  现在我们增加难度如果我要求不能使用计数器来实现strlen请写出代码 //参数是const注意统计的是\0之前的字符数量 size_t strlen(const char* str) {size_t ans 0;while (*str){ans;str;}return ans; }  假如我是面试官请联系指针特性再写一种方法实现strlen size_t strlen(const char* str) {const char* pstr;while(*p){p;}return p-str;//指针-指针 } 下面是三个不考的库函数实现 //1.strcpy实现 char* strcpy(char* dest,const char* src) {//检查assert(dest!null);assert(src!null);//首先用一个新指针记录dest指针起始位置便于后面dest后移可以找到头部char* pdest;while((*dest*src)){}return p; }//2.strcat实现 char* strcat(char* dest,const char* src) {//检查assert(dest!null);assert(src!null);//同理记录dest起始位置char* pdest;//先将dest走空while(*dest!\0){dest;}//再拷贝while((*dest*src)){}return p; }//3.strcmp实现 int strcmp(const char* str1,const char* str2) {//判断assert(str1!null);assert(str2!null);while(*str1*str2){//检查是否已经出现str1为\0情况if(*str1\0) return 0; str1;str2;}return *str1-*str2; }  对于上面上个库函数的衍生strncat/strncmp/strncpy 我们是需要保证在n个字符的情况下实现即可 大家可以去参考我之前写的博客字符串函数详解_tolower 头文件-CSDN博客 下面是几个面试常考的库函数实现 1.strstr实现 char* strstr(const char* str1,const char* str2) {//最简单实现O(N^2)char* p(char*) str1;//注意强转//检查str2if(!*str2)return p;while(*p){char* s1p;char* s2(char*) str2;while(*s1!\0*s2!\0(*s1*s2)){s1;s2;}if(*s2\0)return p;p;}return null; } 5.内存函数 内存函数memecpy/memset/memmove/memcmp,其中重点考察的是memmove和memcpy我们这里只讲解重点内容的实现其他部分可以参考下面链接 C语⾔内存函数-CSDN博客 memcpy实现 //注意点我们的返回值和参数都是void*,因为我们也不确定要拷贝的类型num为字节数 void* memcpy(void* dest,const void* src,size_t num) {void* pdest;//检查assert(dest);assert(src);while(num--){*(char*)dest*(char*)src;dest(char*)dest1;src(char*)src1;}return p; } memmove实现 //注意返回值和参数都是void* void* memmove(void* dest,const void* src,size_t num) {//检查assert(dest!null);assert(src!null);void* pdest;//方便返回//判断是否出现内存重叠if(destsrc||(char*)dest(char*)srcnum){//无内存重叠while(num--){*(char*)dest*(char*)src;dest(char*)dest1;src(char*)src1;}}else{//有内存重叠 //此时我们可以从后向前拷贝dest(char*)destnum-1;src(char*)srcnum-1;while(num--){//拷贝*(char*)dest*(char*)src;dest(char*)dest-1;src(char*)src-1;}}return p; } memcpy与memmove区别 如果memmove函数处理的源内存块和目标内存块是可以重叠的而memcpy是不处理重叠部分的对于重叠的是未定义的 6.数据储存 整数的储存 正整数原反补相同负数各不相同 原码将整数按照数值位转变成二进制即可最高位负数为1正数为0 反码符号位最高位不变其余为按位取反负数 补码在反码的基础上1 注意点在计算机中整数全部按照补码存取 大小端         存在原因对于数据超过一个字节而内存中一个地址对应一个字节所以必然产生如何存储顺序的问题。 大端将数据的低位字节存储在内存地址的高字节中 小端将数据的高字节存储在在内存地址的低字节中 那么我们如何判断大小端呢 //通常有以下两种方法 //法一指针转换法 void Test1() {int i1;//0x00000001int ret*(char*)i;//将四字节转换为一字节判断低位是0x00还是0x01if(ret1){//如果是1说明数据的小端存储在内存的小端std::cout小端”std::endl;}else{//否则说明数据的大端储存在内存的大端std::cout大端std::endl;} } //法二联合体判断法 Union {int i;char ch; }UU; void Test2() {UU.i1;//通过判断ch的值就可以判断大小端与上面道理相似if(UU.ch1){std::cout小端”std::endl;}else{std::cout大端std::endl;} } 下面我们来补充一个知识大小端转换         这里我们就直接实现 //现在假设我们要将0x12345678转换为0x78563412templatesize_t T inline void convert(char* val) {std::swap(*val,*(valT-1));convertT-2(val1); }templateclass T inline Apply(T* val) {convert(sizeof(T)((char*)val); }int main {int i0x12345678;Applyint(i);std::coutistd::endl;return 0; } 最后感谢大家的支持祝大家国庆节快乐
http://www.yayakq.cn/news/2153/

相关文章:

  • 事业单位 网络网站建设做网站用eclipse吗
  • 电商网站毕业设计论文wordpress栏目对应模板
  • 潍坊手机模板建站金华市建设局官方网站
  • 建设营销型网站广州两学一做专栏网站
  • 网站开发公司广告word共享办公室可以注册公司吗
  • 长治市城乡建设局网站淘宝做网站的都是模板
  • 利用对象储存做网站ps网站页面设计教程
  • 做投资理财网站微信小程序怎么做网站
  • 免费做网站的软件宁波seo服务引流推广
  • 中装建设官方网站哪家做企业网站
  • 大气黑色女性时尚类网站织梦模板代码高亮wordpress
  • 怎么做网站的百度排名长沙河西网站建设
  • 上海专业微信网站开发公司公司网站用个人备案 2018
  • 东昌府网站建设公司域名分类网站
  • 深圳公司社保网站如何利用seo赚钱
  • 成都网站建设987net手机网页制作作品
  • 深圳建设工程交易中心网站营销网站建设公司地址
  • 网站开发样例衡水注册公司流程和费用
  • 石家庄网站建设服务群晖wordpress外网
  • 给传销产品做网站物业网站模板下载
  • 贵港公司做网站怎么做网站模块
  • 厦门网站制作哪里好薇企业所得税规避50种
  • icp网站负责人做海报的素材那个网站比较好
  • 网络营销课程有哪些湖南专业seo公司
  • 建设网站定位分析机械制造设备类企业网站织梦模板
  • 如何建立免费的个人企业网站建筑网站大全免费
  • 襄阳营销型网站建设秦皇岛做网站的公司
  • 网站服务器和空间大小1688首页
  • 淘宝店铺网站建设郑州公共住宅建设投资有限公司网站
  • 网站备案对应的ip地址短视频运营岗位职责和任职要求