ANSI C 在<s
TDdef.h> 中定义了offsetof() 宏, 用offsetof(struct s, f) 可以计算出域f 在结构s 中的偏移量。
作为一种风格, 很多人不愿意在程序中到处出现未加修饰的0。
因此定义了预处理宏NULL (在<sTDio.h> 和其它几个头文件中) 为空指针常数, 通...
传统的解决方案是分配一个指针数组,
然后把每个指针初始化为动态分配的“列”。
以下为一个二维的例子:
#include <sTDlib.h>...
问题:为什么这段代码不行?
char *answer;
printf("Type something:\n");
gets(answer);
printf("You typ...
在调用alloca() 的函数返回的时候, 它分配的内存会自动释放。
也就是说, 用alloca 分配的内存在某种程度上局部于函数的“堆栈帧&rdquo...
根据“缺少的” 头文件的种类, 有几种情况。
如果缺少的头文件是标准头文件, 那么你的编译器有问题。
你得向你的供货商或者精通你的编译器的人求助。
对...
只要使用函数time(), ctime(), localtime() 和/或strftime() 就可以了。
下面是个简单的例子:
#include <sTDio.h&g...
直接的方法是rand() % N /* 不好*/试图返回从0 到N ¡ 1 的数字。
但这个方法不好, 因为许多随机数发生器...
你可以调用srand() 来初始化模拟随机数发生器的种子, 用的值可以是真正随机数或至少是个变量, 例如当前时间。
这儿有个例子:#include <sTDlib.h>...
为了把printf() 的正确原型说明引入作用域。对于用可变参数的函数, 编译器可能用不同的调用次序。
例如, 如果可变参数的调用比固定参数的调用效率...
Unix 和其它一些系统提供了popen() 函数, 它在联通运行命令的进程管道设置了sTDio 流, 所以输出可以被读取(或提供输入)。
记住, 结束使用后, 要...
用vprintf(), vfprintf() 或vsprintf()。
下面是一个error() 函数, 它列印一个出错信息, 在信息前加入字符串“er...
用<sTDarg.h>提供的辅助设施。
下面是一个把任意个字符串连接起来的函数, 结果存在malloc 的内存中:
#include <sTDlib.h>...
直接做不到这点。
但是你可以写出你自己的printf 变体, 把所有的内容都输出两次。
下边有个简单的例子:
#include <sTDio.h>
#inclu...
当用于sprintf() 的格式串已知且相对简单时, 你有时可以预测出缓冲区的大 小。
如果格式串中包含一个或两个%s, 你可以数出固定字符的个数再加上对插入 的字...
1 对sizeof 的理解:
例子1:
void main()
{
int a = 2;
...
题目:
有一堆人围一圈,开始从1开始编号,每个人数到3的人,推出,然后继续从下一个1开始数数,直到剩下最后一个人。用编程实现。
#include<iostream>...
1 union巧妙地实现多字节数据类型之间的转化
在涉及音视频编解码算法中,经常会涉及一些数据压缩、声音解码、图象的缩放等问题。
这里通...
看代码先,下面的讲解都是针对这篇代码:
#include <iostream>#include <string>using namespace sTD;
...