PLM之家PLMHome-工业软件践行者

[资料分享] 结构体中数组成员的赋值问题,值得借鉴哈!

[复制链接]

2015-4-26 11:36:28 2962 0

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

积分
82162
QQ
发表于 2015-4-26 11:36:28 | 显示全部楼层 |阅读模式

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
#include <iostream>
0 Z  [  w% x$ V# qusing namespace std;- I' V. L& u9 {1 r: i
struct student# h' S3 W+ m# J# v! E
{( |. ?3 n  O8 Y3 ?
  char name[20];. U" [: z+ l' f7 N
  int age;
& [" {4 T6 Z/ l};
int main( )4 b' D/ H- O: X. y
{
' @2 z2 h( p! M! W student s;
. U4 D- U! `/ v2 Q, r s.name="gyy";   //error
, B: s( }: _2 ]
return 0;
) ]' }0 E2 Q. U}
, j5 \/ k; |7 u) Z3 L. E( w
道理和以下语句错误的原因一样,数组名表示常量,不允许对常量赋值,所以常量不允许出现在“=”的左边,当做左值出现。所以不能直接用字符串赋值给数组名。但请注意:可以在定义字符数组的同时用字符串给字符数组赋初值。
char name[20]="gyy";  //ok
但先定义,再赋值的方式就是错误的。
char name[20];
5 g# c2 p2 g" g- @; n) H1 @ name="gyy";  //error
对开始的程序修改方式(1)
#include <iostream>% @7 g% T) l2 Y. \8 y  s
using namespace std;
2 x# @5 m6 D2 }/ Ystruct student
. m: E2 v1 E+ s# G% W: `{
; s7 T2 g+ @2 I( H  string name;2 A2 M0 A$ V7 U+ K7 i2 L
  int age;$ @4 [& `6 a4 c+ G+ ^2 v& K3 N
};
int main( )
2 S" H: ?) A1 @2 b; r3 q{
1 M$ A1 j0 z+ n" M3 S. t9 y3 U student s;
! N: u+ `* ~+ o' D1 H; \( r s.name="gyy";   //ok
1 U' L8 i; T1 u
return 0;" |, n  c; f/ e1 d
}
对开始的程序修改方式(2)
#include <iostream>8 H- F( ~# ^: X
using namespace std;
" K( }" ]1 q5 Ystruct student! }$ R( {5 g3 R8 v
{# C# W- ^5 B2 [- I5 Y. {) c' ^
  char  name[20];# u/ b6 E! U0 |& I+ I8 J6 O
  int age;& x2 T2 P9 F" a2 F  K/ t3 `2 t
};
int main( )1 z, D: ^* ~- Q2 Y8 T
{
. q4 g- Q" {. m4 r/ u student s;
& ]3 l7 n+ ]! S9 u. j2 ]! O# p: k strcpy(s.name,"gyy");   //ok
( X) j) g( U% Q6 ?* [
return 0;9 c- m8 A: b$ Z9 ]: ]
}
2 ]* l4 _5 J8 H  x) Q
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了