
C语言
rv0p111
之前由于一些原因博客没有更新,现在还是正常更新,继续分享..
展开
-
C语言中的字符数组
一、 关于字符数组在C语言中其实是没有字符串的概念的需要借助字符数组来存储字符串为了区别字符串,需要在字符数组的末尾添加’\0’,如果我们的数组空间足够的话编译器会自动的帮我们加以此来作为字符串的结束标志,并且不计入字符串长度二、代码实战当我们以下面的方式来把字符串赋值给字符数组的时候char str[5]={"baidu"};此时编译器会报错,如下所示,因为...原创 2018-03-18 10:04:37 · 451 阅读 · 0 评论 -
C语言中的inline函数
一、简单介绍这里想起来还是要总结一下关于inline关键字的问题,尽管C和C++有着自己的语音规范和标准,但其实不同的编译器对有些关键字的实现是不一样的,比如说inline。就好比说在C99标准中inline :用于同一c/cpp文件内部被调用处展开;对外部文件来说函数不可用。而GCC编译器的实现则是inline :对同一c/cpp文件,函数将会在被调用处展开;对外部文件,此函数等同于"exter...原创 2018-03-25 15:44:35 · 2077 阅读 · 0 评论 -
C语言结构体方法的定义
一、简单介绍一般来说我们如果要在函数中去创建一个结构体的话,返回值一般都是返回一个指针,因为如果我们返回的是一个结构体的话,会消耗内存,因为在函数里面的内部创建的结构体,然后外面声明一个变量赋值给它,其实是做了一个拷贝操作,这样的话如果结构体有很多属性,就会消耗很多的内存,所以我们一般是把指向结构体的指针传递出去。下面都是在栈区开辟的空间,所创建的变量。所以是会存在问题的,因为是在子函数栈里面创建...原创 2018-04-12 23:44:08 · 2094 阅读 · 0 评论 -
编译器对main函数做的事情
学习了底层之后,会有一个疑问,为什么我程序运行main函数就会自己去运行了?其实这个事情是编译器帮你做的,编译器帮你加了些许指令,下面就简单介绍下在TC 2.0的编译器下,tc.exe文件会把c0s.obj目标文件和我们自己写的.obj的目标文件一起进行连接,生成.exe文件,按照这样的方法生成的.exe文件中程序的运行过程如下所示1、c0s.obj里面的程序会先执行,然后进行相...原创 2018-05-26 20:47:20 · 607 阅读 · 0 评论