struct RtpHeaderStruct { u_int32 version : 2; // protocal version u_int32 padding : 1; // padding flag - for encryption u_int32 extension : 1; // header extension flag u_int32 count : 4; // csrc count u_int32 marker : 1; // marker bit - for profile u_int32 type : 7; // payload type u_int32 sequence : 16; // sequence number ...
by keneth2078 - C/C++ - 2010-08-28 16:49:59 阅读(8008) 回复(9)
本帖最后由 x5miao 于 2011-09-08 09:50 编辑 我知道c对struct结构体有两种初始化方法。比如对于以下结构体[code]typedef struct { char a; int b; }A;[/code]方法一:A a={'c',4}; 方法二:A a={.a='c',.b=4}; 其中方法一是所有的c标准都支持的结构体变量初始化方法,方法二是c99新增的初始化方法。 但今天突然看到了一种使用冒号的新的初始化方法 方法三:[code]A a={a:'c',b:4};[/code]我用gcc -Wall -o a.out a.c -std=...
struct test { int data; test():data(0){} }; test *root; cout << root->data; return 0; 这样输出的值怎么不是为0呢?
static struct TWavHeader wavHead = { .riffId[4] = {'R','I', 'F', 'F'}, .rLen = audDataNum + sizeof(TWavHeader), .wavId[4] = {'W', 'A', 'V', 'E'}, .fmtId[4] = {'f', 'm', 't'}, .wformatTag = {0}, .nchannel = 2, .nSampleRate = 11025, .averaBytePerSec = 44100, .bitSample = 16, .nBlock = 4, .ndataId[4] = {'d', 'a', 't', 'a'}, .data_length = audDataNum, ...
[code]class AA { public: ... struct BB{ int a = 0; float b; } privated; BB bb; } [/code] 着重部分那一句,不能这样做,编译器报错(Gcc3。2。2) 那我怎样对它做初始化呢?
[code]#include
请教一个问题: struct file结构体中有一个结构 const struct file_operations *f_op; 每个文件对应的file结构中的这个属性是什么时候初始化的? 是在建立文件系统的时候先初始化根的file 然后在这个文件系统中 新建文件的时候从根的file复制过来的?
我看了一些PcI驱动程序的源代码,好像没发现对struct pci_dev进行初始化的地方,比如在下面这些函数中直接用的 int probe(struct pci_dev *pdev,const struct pci_device_id *pci_id); 是不是内核在启动的时候已经对所有的物理设备进行了扫描,并建立起对这些设备进行组织的数据结构,同时对pci_dev 以及描述其他设备的结构进行了初始化,所以程序中可以拿来直接用?
现在我有这样一个类
class student
{
student(string s):name(s){}
void print() {cout << name;}
private:
string name;
};
和一个字符串数组
string nameList = {"Adam", "Ban", "charlie"};
我想用这个字符串中的数组分别作为参数去初始化一个student vector
vector