C语言
垃圾中的小菜鸡
最怕一事无成
展开
-
linux下创造一个假终端,同终端操作实现相同功能
在虚拟机终端输入命令操作,是我们常见也是最基本操作,今天调用system()函数可创造一个假的终端操作窗口#include #include #include #include int main(){ printf("请选择文件:\n"); system("ls /home"); char str[100]; while(1) { fgets(str,1000,st原创 2017-08-10 10:41:22 · 249 阅读 · 0 评论 -
/usr/bin/ld: cannot open output file a.out: Permission denied,解决办法在最后
这种情况发生的原因有很多种,今天列举一种,如后遇到再补充,先描述现象:笔者,这种情况是发生在:两个终端,其中一个终端生成并且正在执行a.out文件,在另外一个终端相同目录下,编译另外一个.c文件,出现在这种情况,根据我的描述大家也差不多知道这种情况的发生,笔者以前也遇到这样的情况,不过不是这种情况,但是解决办法都是相同的,首先我们首先想到kill函数,因为没有pid,或者说我们没有原创 2017-08-14 15:18:25 · 10573 阅读 · 1 评论 -
字符串与指针
1、字符串的存储与访问字符串的访问char str[N];第i个字符的地址:str+i第i个字符:*(str+i)思考???以下写法是否正确?char s1[N];s1[]=“Welcome”;s1=“Welcome”;错误!必须逐一赋值或使用函数,且数组长度要足够大。可以使用字符指针解决:ch原创 2017-08-07 11:33:42 · 311 阅读 · 0 评论 -
c语多级指针
指针用途:1、使程序简洁、紧凑、高效2、内存的动态分配3、内存地址的直接处理4、函数调用时批量参数的传递5、复杂数据结构的简洁表达等许多其它数据类型难以实现的复杂操作等等……一、 多级指针1、为什么需要使用二级指针------使用二级指针是为了函数调用结束可以使作为函数实参的指针的值的改变保留下来------数据结构链原创 2017-08-07 11:28:30 · 248 阅读 · 1 评论 -
对指针的总结
指针(Pointer)就是内存的地址,C语言允许用一个变量来存放指针,这种变量称为指针变量。指针变量可以存放基本类型数据的地址,也可以存放数组、函数以及其他指针变量的地址。 程序在运行过程中需要的是数据和指令的地址,变量名、函数名、字符串名和数组名在本质上是一样的,它们都是地址的助记符:在编写代码的过程中,我们认为变量名表示的是数据本身,而函数名、字符原创 2017-08-06 22:29:42 · 247 阅读 · 0 评论 -
我印象中的指针与数组4
这一节主要是讲数组与指针的结合,这是比较难也是在笔试题中经常会考的1.c语言指针数组如果一个数组中的所有元素保存的都是指针,那么我们就称它为指针数组。指针数组的定义形式一般为: dataType *arrayName[length];[ ]的优先级高于*,该定义形式应该理解为:dataType *(arrayName[length]);括号里面说明arrayName是一个数原创 2017-08-06 22:02:55 · 173 阅读 · 0 评论 -
我印象中的指针与数组3
我印象中的指针与数组2中简单介绍了数组的定义与使用,这一篇把指针的定义与使用说下,后面的续集就开始说这两者的联系与应用了1.概念计算机中所有的数据都必须放在内存中,不同类型的数据占用的字节数不一样,例如 int 占用4个字节,char 占用1个字节。为了正确地访问这些数据,必须为每个字节都编上号码,就像门牌号、身份证号一样,每个字节的编号是唯一的,根据编号可以准确地找到某个字节。 我们原创 2017-08-05 00:12:08 · 163 阅读 · 0 评论 -
我印象中的指针与数组2
由于前面写的太大了,没有注重基础,今天先把数组的基本定义和简单使用写一下,后面附了一个简单的数组计算,就当是练习1、什么是数组在程序设计中,为了处理方便,把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组。 在C语言中,数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同原创 2017-08-05 00:01:57 · 175 阅读 · 0 评论 -
利用C语言编写一个通讯录,包括用户界面
记得好久之前写的,今天一个学弟问我,我才想起来,主要是依靠链表完成的,细节方面做的还需要改进,主题架构就是这样了#include #include #include #define TRUE 1#define FALSE 0typedef struct _add{ int ID; char Name[20]; char Address[30]; char Compa原创 2017-08-04 23:37:15 · 3081 阅读 · 0 评论 -
链表与顺序表的区别
顺序表存储位置是相邻连续的,可以随即访问的一种数据结构,一个顺序表在使用前必须指定起长度,一旦分配内存,则在使用中不可以动态的更改。他的优点是访问数据是比较方便,可以随即的访问表中的任何一个数据。 链表是通过指针来描述元素关系的一种数据结构,他可以是物理地址不连续的物理空间。不能随即访问链表元素,必须从表头开始,一步一步搜索元素。它的优点是:对于数组,可以动态的原创 2017-08-04 23:28:57 · 239 阅读 · 0 评论 -
错误:声明指定了两个以上的数据类型
在编译cpp文件的时候,GCC提示错误: 错误:‘‘的声明指定了两个以上的数据类型‘’在此作用域中尚未声明一般当结构体,类的定义后忘记 ; 时会出现这个错误提示。原创 2017-08-30 16:00:00 · 2230 阅读 · 0 评论