A. c語言 定義結構體變數
首先,定義一個結構的一般形式為:
struct結構名
{
//成員表列
};
成員表由若干個成員組成, 每個成員都是該結構的一個組成部分。對每個成員也必須作類型說明,其形式為:「類型說明符 成員名;」。成員名的命名應符合標識符的書寫規定。例如:
struct stu
{
int num;
char name[20];
char sex;
float score;
};
在這個結構定義中,結構名為stu,該結構由4個成員組成。 第一個成員為num,整型變數;第二個成員為name,字元型數組;第三個成員為sex,字元型變數;第四個成員為score,浮點型變數。 應注意在括弧後的分號是必不可少的。
然後,當結構定義完成後,即創建了一種數據類型,可以像int、float等內置類型一樣使用,以上面定義的stu結構體來和int類型對比著看。
int a;//定義一個int類型的變數a
stu a; //定義一個stu類型的變數a
int *p; //定義一個int類型的指針p
stu *p; //定義一個stu類型的指針p
int a[10];//定義一個int類型的數組a,它有10個元素,每個元素是int類型
stu a[10];//定義一個stu類型的數組a,它有10個元素,每個元素是stu類型。
B. C語言結構體變數
typedef為C語言的關鍵字,作用是為一種數據類型定義一個新名字。這里的數據類型包括內部數據類型(int,char等)和自定義的數據類型(struct等)。
1、typedef的最簡單使用 typedef long byte_4; 給已知數據類型long起個新名字,叫byte_4。 byte-4 a=2; 就相當於int a=2;
2.typedef char * pstr; 給char*起了個新名字pstr.
typedef struct S
{ int g; struct S *next;}*typedef;
自定義的數據類型struct S
{ int g; struct S *next;}
typedef struct S * T; 即給 struct S * 起了個新名字!
C. C語言中如何將16位結構體定義為4位和12位兩部分
沒法定義,只是在使用的時候可以實現4位與12位的效果。可以將A與B分別定義成16位的,按兩個成員來用。或定義成一個16位成員,然後在讀、寫時分別處理高四位與低12位。
D. c語言結構體變數的地址是啥呢
是相同的。
str是一個結構體的變數。類型為struct
ss。而a[4]是這個結構體的每一個成員,str的地址值與int
a[4]的地址值一樣,但僅僅是地址值是一樣的,而地址是有類型的,兩者類型不一樣,str的地址類型為sturct
ss
*,而成員a[4]的地址類型為int
*。
E. C語言中什麼叫結構變數它的作用又是什麼
就是結構體變數唄,就像C++裡面的類一樣。
這樣說吧,int型裡面就是只能放整數,你自己定義個結構,給裡面設置好放什麼了,再把這個結構定義為類型,你定義的這種類型的變數就只能放你但是設置好的東西。
F. C語言定義結構體變數
C是不正確的。
A是定義struct aa,同時以typedef 定義結構體aa的別名AA,然後用AA定義變數
B是定義了一個宏,帶入後,就是struct aa{}tdl; 這個是很常見的定義結構體同時定義變數的做法。
D是定義了一個無名結構,同時定義變數。
只有C, 按照C的寫法,是定義了一個無名結構,同時定義變數aa,但是下面定義tdl的時候,又把aa當做結構體名了,這個就不對了。
G. c語言結構體變數怎麼使用
結構體變數簡稱為結構變數,它由結構類型定義,有三種定義方法。下面以定義結構類型 book 和結構變數mybook 、 storybook 為例說明之。
1. 先定義結構類型,再定義結構變數。
struct book /* 定義結構體類型 */
{
char bookname[20];
float price;
char publisher[20];
char author[10];
} ;
struct book mybook, storybook;
用這種方法定義結構變數,是最常用的方法,但須注意不能省略關鍵字「 struct 」。還可以在定義結構變數的同時給它的成員賦初值。如:
struct book /* 定義結構體類型 */
{
char bookname[20];
float price;
char publisher[20];
char author[10];
} ;
struct book mybook = { 「maths」, 24.7, 「 電子社 」, 「zhao」 }, storybook;
則, mybook 變數的 price = 24.7 。
2. 定義結構類型的同時定義結構變數。
struct book /* 定義結構體類型 */
{
char bookname[20];
float price;
char publisher[20];
char author[10];
} struct book mybook, storybook;
3. 不定義結構類型,直接定義結構變數。
struct /* 不定義結構類型名 */
{
char bookname[20];
float price;
char publisher[20];
char author[10];
} struct book mybook, storybook;
需要說明的是,當某結構類型的成員又是另外一個結構類型時,稱嵌套定義,其定義方法如下:
struct brith_date
{
int month ;
int day ;
int year ;
} ;
struct
{
char name[10] ;
char address[30];
char tel[12];
int age;
struct data birthday;
char sex[3];
} student_01 , employee ;
此例直接定義了 student_01 和 employee 兩個變數,但是沒有定義此結構體的名字,因此不能再定義與student_01 和 employee 同類的其它結構變數了!如下行定義是錯誤的:
truct boy, girl;
H. c語言如何定義結構體變數
首先,定義一個結構的一般形式為:
struct結構名
{
//成員表列
};
成員表由若干個成員組成,每個成員都是該結構的一個組成部分。對每個成員也必須作類型說明,其形式為:「類型說明符成員名;」。成員名的命名應符合標識符的書寫規定。例如:
structstu
{
intnum;
charname[20];
charsex;
floatscore;
};
在這個結構定義中,結構名為stu,該結構由4個成員組成。第一個成員為num,整型變數;第二個成員為name,字元型數組;第三個成員為sex,字元型變數;第四個成員為score,浮點型變數。應注意在括弧後的分號是必不可少的。
然後,當結構定義完成後,即創建了一種數據類型,可以像int、float等內置類型一樣使用,以上面定義的stu結構體來和int類型對比著看。
inta;//定義一個int類型的變數a
stua;//定義一個stu類型的變數a
int*p;//定義一個int類型的指針p
stu*p;//定義一個stu類型的指針p
inta[10];//定義一個int類型的數組a,它有10個元素,每個元素是int類型
stua[10];//定義一個stu類型的數組a,它有10個元素,每個元素是stu類型。
I. C語言結構體變數
看一個例子吧
typedef
struct
_my_date
{
int
y;
int
m;
int
d;
}my_date,MY_DATE,*PMY_DATE;
定義變數合法的有
struct
_my_date
var;
/*定義一個結構體變數
var*/
struct
_my_date
*
var;
/*定義一個結構體變數指針
var*/
my_date
var;
/*定義一個結構體變數
var*/
my_date
*
var;
/*定義一個結構體變數指針
var*/
MY_DATE
var;
/*定義一個結構體變數
var*/
MY_DATE
*
var;
/*定義一個結構體變數指針
var*/
PMY_DATE
var;
/*定義一個結構體變數指針
var*/
分析答案:
A)可用S定義結構體變數
錯,應該用
struct
S
var;
/*var是變數*/
B)可以用T定義結構體變數
錯,可以用T定義結構體變數指針
C)可以用T定義指向結構體變數的指針
對
D)T是struct
S類型的變數
錯,T是結構體指針類型
相當於
T
<=>
struct
S
*
J. C語言 定義結構體變數
首先,定義一個結構的一般形式為:
struct結構名
{
//成員表列
};
成員表由若干個成員組成,
每個成員都是該結構的一個組成部分。對每個成員也必須作類型說明,其形式為:「類型說明符
成員名;」。成員名的命名應符合標識符的書寫規定。例如:
struct
stu
{
int
num;
char
name[20];
char
sex;
float
score;
};
在這個結構定義中,結構名為stu,該結構由4個成員組成。
第一個成員為num,整型變數;第二個成員為name,字元型數組;第三個成員為sex,字元型變數;第四個成員為score,浮點型變數。
應注意在括弧後的分號是必不可少的。
然後,當結構定義完成後,即創建了一種數據類型,可以像int、float等內置類型一樣使用,以上面定義的stu結構體來和int類型對比著看。
int
a;//定義一個int類型的變數a
stu
a;
//定義一個stu類型的變數a
int
*p;
//定義一個int類型的指針p
stu
*p;
//定義一個stu類型的指針p
int
a[10];//定義一個int類型的數組a,它有10個元素,每個元素是int類型
stu
a[10];//定義一個stu類型的數組a,它有10個元素,每個元素是stu類型。