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

龙岗坑梓网站建设淘宝客怎么做的网站

龙岗坑梓网站建设,淘宝客怎么做的网站,网站开发方向的工作,办公用品网站模板《C 对象模型》第19页有这样一句话 C程序员的巧计有时候却成为c程序员的陷阱。例如把单一元素的数组放在一个struct的末尾#xff0c;于是每个struct objects可以拥有可变数组的数组#xff1a; struct mumble {/* stuff */char pc[1]; };//从文件或标准输入装置中取得一个…《C 对象模型》第19页有这样一句话 C程序员的巧计有时候却成为c程序员的陷阱。例如把单一元素的数组放在一个struct的末尾于是每个struct objects可以拥有可变数组的数组 struct mumble {/* stuff */char pc[1]; };//从文件或标准输入装置中取得一个字符串 //然后为struct 本身和该字符配置足够的内存struct mumble * pmumbl (struct mumble*)malloc(sizeof(struct mumble) strlen(string) 1); strcpy(mumble.pc,string);正好之前看MCP的cache acess组件的时候也发现THashMap等结构体在结构体末尾使用了单一元素的数组说明这一技巧确实用的广泛现在看看其原理 结构体的末尾定义了一个char数组只分配了1个字符。那怎么能说是可变大小数组。 malloc函数分配了一堆的内存。大小为结构体字符串1字符串结束符 指针pmumbl指向的是malloc所分配的整个内存而pmumbl-pc指向的是这块内存的第一个字节因为malloc操作为整个string分配了足够的内存所以在strcpy的时候虽然溢出了pc的内存范围但没有溢出struct的内存范围使得strcpy的结果就是合理的且可控的。相当于struct拥有了可变大小的数组 C中 public、protected、private内的声明顺序可以被保证但是这三个关键字的布局是不同的。因此总的排列顺序并不能被保证。因此不一定能实现struct的可变大小的数组建议是不要那么做。 下面看一下代码验证 #include iostream #include string.h using namespace std;typedef struct mumble {/* stuff */char pc[1]; } mumble; int main(int argc, char **argv){mumble raw;raw.pc[0] a;cout raw sizeof(raw) endl;char str[10] abcdefgxa;mumble* mumptr (mumble*)malloc(sizeof(mumble) strlen(str));strcpy_s(mumptr-pc,strlen(str) 1, str);cout mumptr sizeof(*mumptr) endl;cout mumptr-pc endl;free(mumptr); }打印结果sizeof并不能获取mumptr的真实大小但是通过下标访问确实能够访问到pc raw 1 mumptr 1 abcdefgxa内存分布图 会发现内存中确实有值 所以以后定义可变包结构时候结构中没有可变包的大小而是只要在结构里最后加一个元素的字节数组就可以。 参考 https://blog.csdn.net/qq_35749455/article/details/116356006 https://blog.csdn.net/weixin_30855761/article/details/99864866?spm1001.2101.3001.6650.3utm_mediumdistribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-3.pc_relevant_defaultdepth_1-utm_sourcedistribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-3.pc_relevant_defaultutm_relevant_index5
http://www.pierceye.com/news/632900/

相关文章:

  • 商城网站框架河南招标信息网
  • 卖辅助网站怎么做最大源码网站
  • 温州百度推广排名廊坊网站排名优化报价
  • 湖北建设信息网站百度一下百度主页
  • 做网站的销售员电话话术wordpress主页链接失效
  • 国外唯美flash个人网站欣赏微网站建设教程
  • 网站动态添加广告怎么做的东莞网站建设规范
  • 天津网站建设工作室seo网站推广实例
  • 网站建设销售工作职责外贸网站建设知识 列表
  • 电子商务网站建设教案wordpress置顶
  • 公司建立网站步骤wordpress修改社交标签
  • 汕头网站建设公司附近电商培训班
  • 传奇服务器网站如何建设官方网站下载zoom
  • 帮人做彩票网站支付接口电子商务网站名字
  • 怎么查询网站是否被收录网络推广软件有哪些
  • 福田我要做网站优化比较好wordpress美图模板
  • wordpress 分享可见湖南优化电商服务有限公司
  • 高培淇自己做的网站网站页面可以用什么框架做
  • 在线推广企业网站的方法有哪些门户网站例子
  • 网站集约化建设 技术优质网站建设是哪家
  • 网站技术制作广州番禺建设银行网站登录
  • 女同性怎么做的视频网站wordpress 文章 定时
  • 域名备案时网站名字wordpress mip主题
  • 旅行社服务网点能否做网站wordpress4.9.8 php版本
  • 网站名称 如何注册wordpress用户名的要求
  • 玉树州wap网站建设公司常州市工程建设招标网
  • 自助网站建设技术支持如何做网站代码
  • 企业数据查询网站word 没有安装wordpress
  • 注册一个设计公司需要多少钱重庆网站建设及优化
  • 青岛企业建设网站公司如何传图片做网站