c语言基础
文章平均质量分 85
SchopenhauerZhang
/*
以往: 十字路口 瑟瑟发抖
而如今:吾常身不离鞍,髀肉皆消。今不复骑,髀里肉生。
*/
我到了该读王小波的作品的阶段了
展开
-
编译、链接一个小程序
源代码输出"hello world",然后退出;vim a.cchar * str = "hello world\n";void print(){ asm("movl $13,%%edx \n\t" "movl %0,%%ecx \n\t" "movl %0,%%ebx \n\t" "movl %4,%%eax \n\t" "int $0x80 \n\t" ::"r"(str):"edx","ecx","ebx"); }void exit(){ asm("movl $42,%原创 2021-03-28 12:48:15 · 280 阅读 · 1 评论 -
C Primer Plus 三至八章
C Primer Plus (第6版) 中文版好久没有整理读书笔记了,从今天起整理下最近几个月的读书笔记,先从C Primer Plus开始,其中大部分都是书中的只是点总结,也有一些个人的理解和扩展,书中部分内容与个人观点相左也有标记,欢迎指正和技术性留言。**第三章 数据和C **第四章 字符串和格式化输入/输出 **第五章 运算符、表达式和语句 **第六章 C控制语句:循环 *...原创 2018-03-13 13:03:42 · 381 阅读 · 1 评论 -
C Primer Plus 第一、二章
C Primer Plus (第6版) 中文版好久没有整理读书笔记了,从今天起整理下最近几个月的读书笔记,先从C Primer Plus开始,其中大部分都是书中的只是点总结,也有一些个人的理解和扩展,书中部分内容与个人观点相左也有标记,欢迎指正和技术性留言。**第一章 初识C语言**第二章 C语言概述第一章 初识C语言编程(使用C语言)的7步:定义程序目标、设计程序、编...原创 2018-03-08 20:12:04 · 574 阅读 · 0 评论 -
Software Engineering
Windows: 1、第一用windows是windows98;约是10多前。记得当时是第一次使用电脑是在小学上微机课,打开电脑,windows的图标出现,似乎是“打开了通向未来的窗口”,从此没有在离开过窗口,尽管对它并没有好感。依稀记得当时在windows系统上做的第一件事是玩扫雷(因为蜘蛛纸牌不会玩),然后在windows的帮助栏上使劲点。那时觉得好神奇,点一下就有东西,而且点了始终出现同一个原创 2016-09-17 12:39:38 · 1193 阅读 · 0 评论 -
VS2015的头文件加载
最近在做有关vs主要是C++;由于要自己写头文件就遇到了一些问题!在这里主要是做做笔记方便以后查看,当然能帮到其他人也是一种荣幸!!系统:Windows7软件:VS2015语言:C++/C我自己写了一个.h文件,现在新建了一个.cpp文件,要引用.h文件。所以怎么办呢?我找到一种办法,感觉还不错。新建052600.cpp文件后, 现在添加include“ 文件.h” 然后把文件复制到工程的文原创 2016-05-26 23:04:03 · 10184 阅读 · 0 评论 -
c++对内存的浅谈以及内存泄漏问题的探讨之十一(2)
c++对内存的操作浅谈!转载 2016-04-26 16:17:58 · 411 阅读 · 0 评论 -
c++对内存的浅谈以及内存泄漏问题的探讨之八
摘要: 大家都知道变量的生存周期这个概念,可是有的时候变量生存周期已经结束,但是所分配的那块内存空间还是存在的。文章举了四个不同的例子,来说明这其中的原因。 前言: 前一段时间在一个好友的的博客论坛上看到他学习C++时遇到的一小点问题,是关于C++中最基本的内存分配方面的。其实对于内存这东西,除了知道我自己用的是256M的内存以外,我也不太清楚他到底里面是怎么工作的。看了大师们的讲解,转载 2016-04-26 16:09:44 · 348 阅读 · 0 评论 -
c++对内存的浅谈以及内存泄漏问题的探讨之五(1)
踏入C++中的雷区——C++内存管理详解 伟大的Bill Gates 曾经失言: 640K ought to be enough for everybody — Bill Gates 1981 程序员们经常编写内存管理程序,往往提心吊胆。如果不想触雷,唯一的解决办法就是发现所有潜伏的地雷并且排除它们,躲是躲不了的。本文的内容比一般教科书的要深入得多,读者需细心阅读,做到真正地通晓内存管理。转载 2016-04-26 16:04:25 · 427 阅读 · 0 评论 -
c++对内存的浅谈以及内存泄漏问题的探讨之三
Bjarne:如何对付内存泄漏? 写出那些不会导致任何内存泄漏的代码。很明显,当你的代码中到处充满了new 操作、delete操作和指针运算的话,你将会在某个地方搞晕了头,导致内存泄漏,指针引用错误,以及诸如此类的问题。###adv###这和你如何小心地对待内存分配工作其实完全没有关系:代码的复杂性最终总是会超过你能够付出的时间和努力。于是随后产生了一些成功的技巧,它们依赖于将内存分配,,,,转载 2016-04-26 16:01:05 · 523 阅读 · 0 评论 -
c++对内存的浅谈以及内存泄漏问题的探讨之十一(1)
如果一个人自称为程序高手,却对内存一无所知,那么我可以告诉你,他一定在吹牛。用C或C++写程序,需要更多地关注内存,这不仅仅是因为内存的分配是否合理直接影响着程序的效率和性能,更为主要的是,当我们操作内存的时候一不小心就会出现问题,而且很多时候,这些问题都是不易发觉的,比如内存泄漏,比如悬挂指针。笔者今天在这里并不是要讨论如何避免这些问题,而是想从另外一个角度来认识C++内存对象。 我们知道,C转载 2016-04-26 16:13:29 · 541 阅读 · 0 评论 -
c++对内存的浅谈以及内存泄漏问题的探讨之十
什么是野指针? 一个母亲有两个小孩(两个指针),一个在厨房,一个在卧室,(属于不同的代码块,其生存期不同)母亲让在厨房的小孩带一块蛋糕(指针指向的对象)给在卧室的小孩,这样在卧室的孩子才肯写作业。但这个在厨房的小孩比较淘气,他在走出厨房时自己将蛋糕吃了,没能带出来。而在卧室的没有吃到蛋糕,所以不肯完成他的作业。结果母亲却不知道卧室的孩子没有吃到蛋糕,还以为作业完了。结果第二天她就被老师召唤到办公室转载 2016-04-26 16:12:01 · 518 阅读 · 0 评论 -
c++对内存的浅谈以及内存泄漏问题的探讨之九
许多 C 或者 C++ 程序员对垃圾回收嗤之以鼻,认为垃圾回收肯定比自己来管理动态内存要低效,而且在回收的时候一定会让程序停顿在那里,而如果自己控制内存管理的话,分配和释放时间都是稳定的,不会导致程序停顿。最后,很多 C/C++ 程序员坚信在C/C++ 中无法实现垃圾回收机制。这些错误的观点都是由于不了解垃圾回收的算法而臆想出来的。 其实垃圾回收机制并不慢,甚至比动态内存分配更高效。因为我们可以转载 2016-04-26 16:10:53 · 380 阅读 · 0 评论 -
c++对内存的浅谈以及内存泄漏问题的探讨之七
在嵌入式系统中使用C++的一个常见问题是内存分配,即对new 和 delete 操作符的失控。 具有讽刺意味的是,问题的根源却是C++对内存的管理非常的容易而且安全。具体地说,当一个对象被消除时,它的析构函数能够安全的释放所分配的内存。 这当然是个好事情,但是这种使用的简单性使得程序员们过度使用new 和 delete,而不注意在嵌入式C++环境中的因果关系。并且,在嵌入式系统中,由于内存的转载 2016-04-26 16:08:26 · 389 阅读 · 0 评论 -
c++对内存的浅谈以及内存泄漏问题的探讨之六
在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。 栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常是局部变量、函数参数等。 堆,就是那些由new分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,一般一个new就要对应一个delete。如果程序员没有释放掉,那么在程序结束后,操作系统会自动回收。转载 2016-04-26 16:07:22 · 350 阅读 · 0 评论 -
c++对内存的浅谈以及内存泄漏问题的探讨之五(2)
6、有了malloc/free为什么还要new/delete? malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。 对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由于malloc/free是库函数而不是运算符,不在编译器转载 2016-04-26 16:06:18 · 403 阅读 · 0 评论 -
c++对内存的浅谈以及内存泄漏问题的探讨之四
菜鸟也能搞定C++内存泄漏 背景 C++内存分配与释放均由用户代码自行控制,灵活的机制有如潘多拉之盒,即让程序员有了更广的发挥空间,也产生了代代相传的内存泄漏问题。对于新手来说,最常犯的错误就是new出一个对象而忘记释放,对于一般小应用程序来说,一点内存空间不算什么。但是当内存泄漏问题出现在需要24小时运行的平台类程序上的时候,将会使系统可用内存飞速减少,最后耗尽系统资源,导致系统崩溃。 所以转载 2016-04-26 16:02:35 · 587 阅读 · 0 评论 -
c++对内存的浅谈以及内存泄漏问题的探讨之二
假设我们要开发一个String类,它可以方便地处理字符串数据。我们可以在类中声明一个数组,考虑到有时候字符串极长,我们可以把数组大小设为200,但一般的情况下又不需要这么多的空间,这样是浪费了内存。对了,我们可以使用new操作符,这样是十分灵活的,但在类中就会出现许多意想不到的问题,本文就是针对这一现象而写的。现在,我们先来开发一个Wrong类,从名称上看出,它是一个不完善的类。的确,我们要刻意地使转载 2016-04-26 15:59:00 · 543 阅读 · 0 评论 -
c++对内存的浅谈以及内存泄漏问题的探讨之一
对于一个c/c++程序员来说,内存泄漏是一个常见的也是令人头疼的问题。已经有许多技术被研究出来以应对这个问题,比如Smart Pointer,Garbage Collection等。Smart Pointer技术比较成熟,STL中已经包含支持Smart Pointer的class,但是它的使用似乎并不广泛,而且它也不能解决所有的问题;Garbage Collection技术在Java中已经比较成熟,转载 2016-04-26 15:48:45 · 636 阅读 · 0 评论 -
用c语言解决闰年问题的详细解释
在用c语言解决问题时我们可能会面临很多的问题,但是没关系,在这里,问您的入门提供帮助,我们一起畅游c----这个世界最强大的语言,也是最复杂的语言!基础从这里开始,梦想在这里启航。原创 2016-04-02 19:56:24 · 9631 阅读 · 0 评论