C
我喝花间一壶酒
这个作者很懒,什么都没留下…
展开
-
《C和指针》第八章书后问题
这道题其他的都比较简单,主要是划红线的两个会有问题。首先 &ints 的结果并不是一个指向指针的指针,而是一个指向数组的指针。具体在8.1.1节有讲所以 &ints 是一个指向含有20个整型元素的数组的指针,那么 &ints 的值就是这个数组中首个元素的地址,也就是100。但是答案中 &ints + 4 的值是 116 是错误的,因为 &int...原创 2019-11-24 20:48:28 · 688 阅读 · 3 评论 -
《C和指针》第七章书后编程
#include <stdio.h>#include <stdlib.h>int hermite(int n,int x){ if(n<=0) return 1; else if(n==1) return 2*x; else return 2*x*hermite(n-1,x)-2*(n-1)*hermite(n-2,x);}in...原创 2019-11-23 20:48:51 · 272 阅读 · 0 评论 -
C语言可变长参数函数与默认参数提升
版权声明:本...转载 2019-11-23 20:39:40 · 338 阅读 · 0 评论 -
《C和指针》第六章书后编程
#include <stdio.h>#include <stdlib.h>char *find_char(char const *source,char const *chars){ if(source == NULL || chars == NULL) return NULL; else { char *t...原创 2019-11-22 22:08:36 · 333 阅读 · 1 评论 -
《C和指针》第七章书后问题
我觉得是缺点,函数调用之前编译器应该知道函数的返回类型,参数类型和个数。返回值会被转换为函数声明中指定的类型 A,相当于做了一次强制类型转换。非法,编译器会报错。返回值会被当成整型值。传递给函数的实参将进行缺省参数提升,char 和 short 类型的实参被转换成 int 型,float 类型的实参被转换为 double 型。这个函数假定传递给它的是10个元素的数组,函数...原创 2019-11-21 22:02:36 · 236 阅读 · 0 评论 -
《C和指针》第六章书后问题
因为通常无法预测编译器会把变量放在内存中什么地方因为它是一个整数,编译器不会生成对它解引用的指令表达式(a)花的时间更长。因为(a)中运行时才能将 offset 进行大小调整再加到 p 上,编译时不知道变量 offset 中的值。而(b)中编译时已经完成了 3*4 的大小调整,运行时直接执行加上 12 的操作。有问题,循环体中对指针先进行加1再进行解引用,如果是要执行数组的清...原创 2019-11-18 22:15:07 · 615 阅读 · 3 评论 -
《C和指针》第五章书后编程
#include <stdio.h>#include <stdlib.h>int main(){ char s[20]; gets(s); for(int i=0;s[i]!='\0';i++) { if(s[i] >= 'A' && s[i] <= 'Z') s[...原创 2019-11-17 21:18:47 · 281 阅读 · 0 评论 -
《C和指针》第五章书后问题
float 型,2.0和编译器有关,也就是和函数调用的顺序有关,本人测试函数调用是从左到右,即 2 - (3 * 4) = -10。在需要控制特定位的时候,比如写寄存器等。运行速度没有区别,执行的任务相同。leap_year = (year % 400 ==0 || year % 4 ==0 && year % 100 != 0);In range...原创 2019-11-16 21:01:48 · 383 阅读 · 0 评论 -
《C和指针》第四章书后编程
使用牛顿迭代法求一个数的平方根#include <stdio.h>#include <stdlib.h>int main(){ double value; double num,pre_num; num=1; scanf("%lf",&value); do { pre_num = num;...原创 2019-11-15 21:59:54 · 199 阅读 · 0 评论 -
《C和指针》第四章书后问题
按书中的说法C语言中没有赋值语句,赋值是通过表达式语句完成的x = y + z;是合法的,这样做可以在花括号内的代码块中引入一个临时变量,只有这个代码块中的语句可以访问。0123456789用于判断循环的表达式不需要初始化和调整时。while 后面少了花括号即使判断条件为假,循环体语句也至少需要执行一次的时候。oddevenodd...原创 2019-11-14 19:59:03 · 479 阅读 · 1 评论 -
《C和指针》第三章书后问题
打开头文件 <limits.h> 可以看到字符和各种整数类型的特点。打开头文件 <float.h> 可以看到定义。许多编译器会报警告。 当 long 整形变量的值在 short 范围内,变量值不变,当 long 整形变量的值超过 short 时,我测试的是去掉高位,只保留低 8 位的数据赋给 short 整形变量。不行char 类型在...原创 2019-11-13 16:13:55 · 284 阅读 · 0 评论 -
《C和指针》第二章书后问题
这个注释会到第5行的 /* loop counter */ 结束,会导致变量 i 未定义,以及最后一行的语法错误。我觉得应该没什么优点,不过参考答案中写了两点,仅作参考三字母词现在应该见得很少,编译器也要加上特定的参数才能显示。如果考虑 “??!” 这个三字母词,那就是要用转义字符输入 “?” 和 “ ” “,所以字符串为““Blunder??!??””,最后两个”?“不需要进行转义...原创 2019-11-12 19:46:40 · 326 阅读 · 0 评论