⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 [蓝森林-自由软件] - 请教各位一个复杂的结构体指针问题.htm

📁 最全的介绍C语言结构体的使用方法和使用技巧!
💻 HTM
📖 第 1 页 / 共 3 页
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0053)http://www.lslnet.com/linux/dosc1/47/linux-323738.htm -->
<HTML><HEAD><TITLE>[蓝森林-自由软件] - 请教各位一个复杂的结构体指针问题.</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content=" 请教各位一个复杂的结构体指针问题." name=keywords>
<META content="www.lslnet.com/linux/: 请教各位一个复杂的结构体指针问题." name=description>
<SCRIPT language=Javascript><!--
function shutwin() {window.close(); return;}
//--></SCRIPT>

<STYLE type=text/css>.small {
	FONT-SIZE: 9pt; LINE-HEIGHT: 1.2; FONT-FAMILY: 宋体,Arial
}
.mid {
	FONT-SIZE: 14px; LINE-HEIGHT: 1.2; FONT-FAMILY: 宋体,Arial
}
.topbar {
	FONT-SIZE: 9pt; COLOR: #00537b; LINE-HEIGHT: 1.2; FONT-FAMILY: 宋体,Arial; TEXT-DECORATION: none
}
</STYLE>

<META content="MSHTML 6.00.2800.1106" name=GENERATOR></HEAD>
<BODY text=#000000 vLink=#000000 aLink=#a65300 link=#003399 bgColor=#ffffff 
topMargin=8><BASEFONT face=宋体,Arial,Helvetica>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
  <TBODY>
  <TR>
    <TD rowSpan=3><A href="http://www.lslnet.com/" target=_top><IMG height=50 
      alt=蓝森林首页 src="[蓝森林-自由软件] - 请教各位一个复杂的结构体指针问题.files/page_logo.gif" 
      width=138 border=0></A></TD>
    <TD vAlign=bottom align=right height=27><FONT color=#0a5a88 size=2><SPAN 
      class=small>| <A href="http://www.lslnet.com/linux" target=_top><FONT 
      color=#74c3f2>返回主页</FONT></A> | <A 
      href="http://www.lslnet.com/map.htm"><FONT color=#74c3f2>本站地图</FONT></A> | 
      <A href="http://www.lslnet.com/search.htm"><FONT 
      color=#74c3f2>站内搜索</FONT></A> | <A 
      href="mailto:webmaster@lslnet.com"><FONT color=#74c3f2>联系信箱</FONT></A> | 
      </SPAN></FONT></TD></TR>
  <TR>
    <TD><IMG height=12 src="[蓝森林-自由软件] - 请教各位一个复杂的结构体指针问题.files/page_word.gif" 
      width=122 vspace=3></TD></TR>
  <TR>
    <TD width="100%" bgColor=#74c3f2><IMG height=2 
      src="[蓝森林-自由软件] - 请教各位一个复杂的结构体指针问题.files/page_line.gif" width=480></TD></TR>
  <TR>
    <TD colSpan=2><IMG height=6 
      src="[蓝森林-自由软件] - 请教各位一个复杂的结构体指针问题.files/spacer.gif"></TD></TR>
  <TR>
    <TD bgColor=#1eb6ff colSpan=2>
      <SCRIPT language=JavaScript1.1 
      src="[蓝森林-自由软件] - 请教各位一个复杂的结构体指针问题.files/menubar.js"></SCRIPT>
    </TD></TR>
  <TR>
    <TD bgColor=#76a6bc colSpan=2>
      <TABLE cellSpacing=1 cellPadding=0 width="100%" border=0>
        <TBODY>
        <TR>
          <TD bgColor=#bfebff height=18><FONT color=#00537b size=2><SPAN 
            class=small> <B>您目前的位置:</B><A class=topbar 
            href="http://www.lslnet.com/">首页</A> &gt; <A class=topbar 
            href="http://www.lslnet.com/linux">自由软件</A> &gt; <A class=topbar 
            href="http://www.lslnet.com/linux/linuxtech.htm">技术交流</A> &gt; 应用编程 
            </SPAN></FONT></TD></TR>
        <TR>
          <TD align=middle bgColor=#ddf4ff>
            <TABLE cellSpacing=0 cellPadding=0 width="86%" border=0>
              <TBODY>
              <TR>
                <TD>
                  <P align=left><BR>&nbsp;&nbsp;&nbsp;&nbsp; 
                  <DIV align=right><FONT face=verdana,arial size=2>蓝森林 
                  http://www.lslnet.com 2006年6月6日 10:18</FONT></DIV><BR>
                  <P>
                  <SCRIPT language=JavaScript1.1 
                  src="[蓝森林-自由软件] - 请教各位一个复杂的结构体指针问题.files/linux.htm"></SCRIPT>

                  <P>
                  <TABLE class=tableborder cellSpacing=0 cellPadding=8 
                  width="100%" align=center border=0>
                    <TBODY>
                    <TR>
                      <TD bgColor=#def7ff><BR>
                        <TABLE class=tableborder cellSpacing=1 cellPadding=4 
                        width="95%" align=center><!--
<tr><td bgcolor="#f0f3fa" class="bold"><a href="archiver/">www.lslnet.com/linux/</a> <b>&raquo;</b> <a href="dosc/linux-23.html">C/C++</a> <b>&raquo;</b> 请教各位一个复杂的结构体指针问题.</td></tr></table>
<table cellspacing="0" cellpadding="0" width="95%" align="center"><tr><td align="center"><br><b>页: </b><b>[1]</b> <a href=archiver/?tid-601616-page-2.html>2</a> <br><br></td></tr></table>-->
                          <TBODY></TBODY></TABLE>
                        <TABLE class=tableborder cellSpacing=1 cellPadding=4 
                        width="95%" align=center><!--
<tr><td bgcolor="#f0f3fa"><table cellspacing="0" cellpadding="0" width="100%"><td class="bold">spalash</td><td align="right">2005-8-29 06:59</td></tr></table></td></tr>-->
                          <TBODY>
                          <TR>
                            <TD bgColor=#def7ff><IMG height=18 
                              src="[蓝森林-自由软件] - 请教各位一个复杂的结构体指针问题.files/icon_new.gif" 
                              width=29 
                              border=0><B>请教各位一个复杂的结构体指针问题.</B><BR><BR>typedef 
                              structr unit<BR>{<BR>&nbsp; &nbsp; int 
                              len;<BR>&nbsp; &nbsp; char 
                              bb[100];<BR><BR>}unit1<BR><BR>void 
                              main()<BR>{<BR>unit1 *mem1;<BR>unit1 *mem2;&nbsp; 
                              &nbsp; <BR>char *k=(char 
                              *)malloc(120);<BR>mem1-&gt;;len=104;<BR>mem1-&gt;;bb=k;<BR><BR>mem2-&gt;;len=16;<BR>mem2-&gt;;bb=k+104;<BR>}<BR><BR>请问这样有问题,记得以前在结构体实现变长缓冲区,都是用<BR>char 
                              bb[1],<BR>现在对于mem2,mem2指向一片地址,请问mem2里具体成员的<BR>地址分配?象bb[100],本来想让bb指向16个字节的缓冲区.<BR>而定义的是100,会有什么莫名的问题吗?<BR><BR><BR><BR>}</TD></TR></TBODY></TABLE><BR>
                        <TABLE class=tableborder cellSpacing=1 cellPadding=4 
                        width="95%" align=center><!--
<tr><td bgcolor="#f0f3fa"><table cellspacing="0" cellpadding="0" width="100%"><td class="bold">FH</td><td align="right">2005-8-29 07:05</td></tr></table></td></tr>-->
                          <TBODY>
                          <TR>
                            <TD bgColor=#def7ff><IMG height=18 
                              src="[蓝森林-自由软件] - 请教各位一个复杂的结构体指针问题.files/icon_new.gif" 
                              width=29 
                              border=0><B>请教各位一个复杂的结构体指针问题.</B><BR><BR>mem1,mem2都没赋值!</TD></TR></TBODY></TABLE><BR>
                        <TABLE class=tableborder cellSpacing=1 cellPadding=4 
                        width="95%" align=center><!--
<tr><td bgcolor="#f0f3fa"><table cellspacing="0" cellpadding="0" width="100%"><td class="bold">spalash</td><td align="right">2005-8-29 07:10</td></tr></table></td></tr>-->
                          <TBODY>
                          <TR>
                            <TD bgColor=#def7ff><IMG height=18 
                              src="[蓝森林-自由软件] - 请教各位一个复杂的结构体指针问题.files/icon_new.gif" 
                              width=29 
                              border=0><B>请教各位一个复杂的结构体指针问题.</B><BR><BR>sorry,写错了,应该是如下所示<BR><BR>typedef 
                              structr unit <BR>{ <BR>&nbsp; &nbsp;int len; 
                              <BR>&nbsp; &nbsp;char bb[100]; <BR><BR>}unit1 
                              <BR><BR>void main() <BR>{ <BR>unit1 *mem1; 
                              <BR>unit1 *mem2;&nbsp; &nbsp;&nbsp;&nbsp;<BR>char 
                              *k=(char *)malloc(120); <BR>mem1=(unit1 *)k; 
                              <BR>k+=k+104; <BR><BR>mem2=(unit1 *)k ; <BR><BR>} 
                              <BR><BR><BR>请问这样有问题,记得以前在结构体实现变长缓冲区,都是用 <BR>char 
                              bb[1], <BR>现在对于mem2,mem2指向一片地址,请问mem2里具体成员的 
                              <BR>地址分配?象bb[100],本来想让bb指向16个字节的缓冲区. 
                              <BR>而定义的是100,会有什么莫名的问题吗?</TD></TR></TBODY></TABLE><BR>
                        <TABLE class=tableborder cellSpacing=1 cellPadding=4 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -