- 博客(17)
- 收藏
- 关注
转载 结构体内存分配问题(转)
结构体内存分配问题(转)sizeof也可以对一个函数调用求值,其结果是函数返回类型的大小,函数并不会被调用终于搞懂struct结构体内存分配问题了.结构体中各个成员字节对齐遵循以下几个原则1.结构体每个成员相对于结构体首地址的偏移量(offset)都是(这个)成员大小的整数倍,如有需要编译器会在成员之间加上填充字节(internal adding); 例如有以下一个结构体
2014-02-09 07:22:45 801
原创 Linux常用命令
文件处理l ls 查看, 参数 –i显示其inum(i结点)(每个文件(软链接除外)都唯一确定的,不重复),.(点)表示当前目录.l mkdir 创建文件夹l touch 创建空文件l cp 复制l mv 移动l cat 查看文件内容(一次性显示全部,只显示最后一屏的内容)l more 分页式查看(一页一页显示)l ln 创建软连接文件(-s 创建
2014-01-29 04:43:29 567
原创 Linux简单总结之Linux权限
1. Linux权限r-读权限,w-写权限, x-执行权限r-4, w-2, x-1rwxr-xr-- 对应数字 754rw-r-x--x 对应数字 651 文件r-cat, more, head, tailw-echo, vi,(只能修改,不能删除)x-命令,脚本目录r-lsw-touch, rm, mkdirx-cd
2014-01-28 01:11:47 668
原创 Linux简单总结之Linux系统处理
1. Linux系统处理Linux所有的操作都有Linux内核进行处理,Linux内容只认识数字不认识字母,所以不管是用户,还是用户组,还是文件,还是进程都需要数字进行标示比如:用户——UID进程——PID文件——inode
2014-01-28 01:10:34 524
原创 Linux简单总结之命名规则
1. 命名规则Linux下只有‘/‘不能用作名字,但是通常情况下还有一些不能用作命名的符号1. 空格不能,因为Linux下命令行是以空格为分隔符的2. 点’.’不能,因为Linux下一点开头的文件名表示这个文件是隐藏文件3. Linux下大小写敏感,严格区分
2014-01-28 01:09:49 784
原创 练习5-3&&5-4&&5-5
练习5-3#include #include "chapter_5.h"void Strcat(char *s, char *t) {//5-3 while (*s != '\0' && *t !='\0') { ++s; } while (*t != '\0') { *(s++) = *t; ++t; }}练习5-4#include
2014-01-25 19:31:07 1086
原创 第四章计算器程序部分代码,结合练习
为了练习多文件组织编程,同时为了能和后面学习的内容结合起来,这套程序改了很多次,至今还有部分功能未实现。这套主要由main.c && atof.c && stack.c && getch.c && getop.c 构成,头文件share.h对所有函数及共享变量或者外部变量声明。share.h#ifndef SHARE_H_INCLUDED#define SHARE_H_INCL
2014-01-25 19:28:33 496
原创 练习4-1,练习4-2
练习4-1#include #define MAX 100int Strrindex(char *source, char t); //4-1void GetLine(char *s); //get string of inputint main() { char input[MAX];//input string; int char_t_location; Get
2014-01-23 16:46:24 653
原创 链表的实现
#include #include typedef struct LNode{ int data; struct LNode *next;}LNode, *LinkList;//*************************************************************************************/*Li
2014-01-20 20:25:28 440
原创 练习3-2
#include #define MAX 100 //limited of amount of array's elementenum {TAB = '\t', NEWLINE = '\n', END = '\0'};//3-2void Escape(char s[], char t[]);void Escape_Reverse(char s[], char t[]);int
2014-01-19 21:15:07 586
原创 以血的教训来谈程序的健壮性&&练习3-3
首先请各位看下面这段代码:#include #define MAX 100 //limited of amount of array's elementvoid Expand(char s1[], char s2[]);int main() { char string_origin[MAX]; char string_transformation[MAX]; int
2014-01-19 21:11:38 620
转载 这样密集的负能量段子,看起来实在是太爽啦!!!
1.又一天过去了。今天过得怎么样,梦想是不是更远了? 2.只要是石头,到哪里都不会发光的。 3.我有位家境一般的朋友,一直觉得如果自己有钱一定会更幸福。后来他妈做婴幼教育发财了。快十年后我见他,问:现在你倒是有钱了,你真的幸福吗?他回答:爽翻啦!我默默地走开了。 4.只有能力强会被当成纯技术人员;而光会社交拍马又会被认为没有真才实学;所以,要想在单位中脱颖而出,最重要的是有
2014-01-17 19:47:27 837
原创 C语言程序设计(第二版),练习2-4&&练习2-5&&练习2-9练习2-10
练习2-4#include #define MAXLINE 1000 //maximun of amount of array//2-4void Squeeze(char s1[], char s2[]);int main() { char s1[MAXLINE];//array s1 char s2[MAXLINE];//array s2 int c; i
2014-01-17 19:44:53 1780
原创 由getchar()函数的使用而引发的思考.
今天在做C语言程序设计,练习2-4中,所遇到的问题,在存储输入的字符时,为了方便起见,直接使用不带变量赋值定义的getchar()。示例错误代码:char s1[];for(int i=0; i < MAXLINE - 1 && getchar() != EOF; ++i) { printf("s1's i: %d\n", i); s1[i] =getchar();
2014-01-17 14:00:16 634
原创 练习1-22
这个一维数组是用来保存我输入的那些全部字符,就是依次输入的很长的那些字符这个数组是用来保存分割后的那些一行一行的字符二维数组第一维是保存行,第二维是保存每行的全部字符这里就是把输入的字符按照一行一行的赋值到这个二维数组里面下面else部分其实是每完成一行的赋值就输出一行这是我和顾逸同学的一些聊天记录,大家凑和着看吧另外这个在windows
2014-01-16 23:02:05 731
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人