标签:c语言

关于C语言中数组大小的一个问题

/*问题描述 从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。 注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。 样例输入 FFFF 样例输出 65535*/ #include <stdio.h> #include<string.h> #define MAXSIZE 10 ch……

关于bool变量

有如下定义: bool visit[10]; 则 for(int i =0;i<10;i++) if(! visit[i])//这一句是什么意思,怎么理解呢 { ….. } 解决方案 40 bool类型就是两个值,true或false,即真或假;非真即假,非假即真; if (!visit[0])就是!对visit[i]取反;若visit[i……

为啥free(a)之后该地址还可用

本人看到一个教程里提到了这么一段: free函数,释放动态内存 void *free(void *p) 举例: char *a,*b a = (char *) malloc(10*sizeof(char)); b = a; … free(a) /*释放其指向的动态内存*/ 于是本人很好奇假如真是如此,那么释放a之后b会保存什么呢?所以本人写了如下的代码: #……

linux 调用本人定义的函数静态库 的结果和放在一个程序里的调用函数的结果不一样了呢

各位高手,本人又来问问题了,哎希望你们能帮本人解答一下下   谢谢! LS是本人编译的平滑函数,对矩阵的一列元素进行平滑处理,输出的矩阵第一行、最后一行是原始函数第一行和第二行的平均、最后一行和倒数第二行的平均。其余中间的是相邻三行的平均。 //LS1.c #include<stdio.h> void LS(int (**Prebdata),in……

怎么样为malloc申请的字串赋值

原帖在这里: http://bbs.csdn.net/topics/392139009?page=1#post-402183908 原因是本人手太快了,所以重新发出,给各位好心的前辈分值。 问题列表: 【已了解】那本人该怎么样确定这块地址能否真的被释放了呢? void * free(void *p): 【尚存疑问】1、这个操作返回空,将返回空的函数作为指针函……

#ifndef… 似乎并不能完全阻止重定义,该怎么办

本人想根据教程的内容本人写一个相对全面点的链表,好好练习练习,大致状况是如下这样,本人把结构和相关的一些基础函数都放在了这里,然后宏这里这样写的: /*Data Structure: data_struct.h*/ #ifndef __DATA_STRUCT_H__ #define __DATA_STRUCT_H__ #include<stdlib.h……

指向数组元素的指针为什么可以+1以后便能指向下一个元素

指针的值类型是不是int型?(本人记得就是int型)int型的值做累加1以后应该就是比原来的值大1吧?例如指针p的值为2293264,那么加1以后应该是2293265吧? 但是在指向一个数组元素的时候本人发现并非本人所想的这样: void main() {  int *p,a[] = {1,2,3,4,5,6,7,8,9,10};     int *end ……