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

📄 subject_47983.htm

📁 一些关于vc的问答
💻 HTM
字号:
<p>
序号:47983 发表者:fanghehe 发表日期:2003-07-26 22:07:20
<br>主题://下面是一个把小写字母变成大写字母的程序,我有问题:
<br>内容://下面是一个把小写字母变成大写字母的程序,我有问题:<BR>#include &lt;ctype.h&gt;<BR>void convert(char *);<BR>void main()<BR>{<BR>//为什么char *p="charsters and $23,29";不可以<BR>&nbsp;&nbsp;&nbsp;&nbsp;char p[]="charsters and $23,29";//却可以执行&nbsp;&nbsp;&nbsp;&nbsp;??<BR>&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;"the ariginal arry is"&lt;&lt;p&lt;&lt;endl;<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;convert(p);<BR>&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;"the coverted arry is"&lt;&lt;p;<BR><BR><BR>}<BR>void convert(char *s)<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;while(*s!='\0')<BR>&nbsp;&nbsp;&nbsp;&nbsp;{if(*s&gt;='a'&amp;&amp;*s&lt;='z')<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*s=toupper(*s);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;++s;<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>}<BR><BR>//下面这个程序有3个莫名其妙的错误,有高手请说说是为什么?<BR>#include &lt;iostream.h&gt;<BR>#include &lt;iomanip.h&gt;<BR>void bubble(int [],const int,int(*)(int ,int));<BR>int ascending(int ,int);<BR>int descending(int ,int);<BR>int main()<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;const int arraysize=10;<BR>&nbsp;&nbsp;&nbsp;&nbsp;int order,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;counter,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a[arraysize]={2,6,4,8,10,12,89,68,45,37};<BR>&nbsp;&nbsp;&nbsp;&nbsp;for(counter=0;counter&lt;arraysize;counter++)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;" "&lt;&lt;a[counter];<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;cin&gt;&gt;order;<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;if(order==1)<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bubble(a,arraysize,ascending);<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;else<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bubble(a,arraysize,descending);<BR>&nbsp;&nbsp;&nbsp;&nbsp;for(counter=0;counter&lt;arraysize;counter++)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;" "&lt;&lt;a[counter];<BR>&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;endl;<BR>&nbsp;&nbsp;&nbsp;&nbsp;return 0;<BR>}<BR>void bubble(int work[], const int size, int (*)compare(int ,int))//这里是一个指向函数的指针;<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;void swap(int ,int);<BR>&nbsp;&nbsp;&nbsp;&nbsp;for(int pass=1;pass&lt;size;pass++)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for(int i=0;i&lt;size-1;i++)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if((*compare)(work[i],work[i+1]))<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;swap(work[i],work[i+1]);<BR>}<BR>void swap(int &amp;a,int &amp;b)<BR>{&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;int temp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;temp=a;<BR>&nbsp;&nbsp;&nbsp;&nbsp;a=b;<BR>&nbsp;&nbsp;&nbsp;&nbsp;b=temp;<BR>}<BR>int ascending(int a,int b)<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;return a&lt;b;<BR>}<BR>int descending(int a,int b)<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;return a&gt;b;<BR>}
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:罗兹维尔 回复日期:2003-07-27 10:28:52
<br>内容:你的第一个程序是犯了初学者经常会犯的错误<BR>看看这个<BR><BR>void main()<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp; char *p = "hello";<BR>&nbsp;&nbsp;&nbsp;&nbsp; *p = 'H';<BR>&nbsp;&nbsp;&nbsp;&nbsp; cout &lt;&lt; p &lt;&lt; endl;<BR>}<BR><BR>这是错误的,原因就是字符串常量是放在代码区的<BR>而代码区不允许改变
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:fanghehe 回复日期:2003-07-28 11:38:37
<br>内容:谢谢,那第二个题怎么出现了莫名其妙的三个错误了呢?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:罗兹维尔 回复日期:2003-08-02 11:56:50
<br>内容:#include &lt;iostream.h&gt;<BR>#include &lt;iomanip.h&gt;<BR><BR>void bubble(int work[], const int size, int (*compare)(int ,int));<BR>int ascending(int ,int);<BR>int descending(int ,int);<BR>void swap(int &amp;a,int &amp;b);<BR><BR>int main()<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;const int arraysize=10;<BR>&nbsp;&nbsp;&nbsp;&nbsp;int order,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;counter,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a[arraysize]={2,6,4,8,10,12,89,68,45,37};<BR>&nbsp;&nbsp;&nbsp;&nbsp;for(counter=0;counter&lt;arraysize;counter++)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;" "&lt;&lt;a[counter];<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;cin&gt;&gt;order;<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;if(order==1)<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bubble(a,arraysize,ascending);<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;else<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bubble(a,arraysize,descending);<BR>&nbsp;&nbsp;&nbsp;&nbsp;for(counter=0;counter&lt;arraysize;counter++)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;" "&lt;&lt;a[counter];<BR>&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;endl;<BR>&nbsp;&nbsp;&nbsp;&nbsp;return 0;<BR>}<BR><BR><BR>void bubble(int work[], const int size, int (*compare)(int ,int))<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;for(int pass=1;pass&lt;size;pass++)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for(int i=0;i&lt;size-1;i++)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if((*compare)(work[i],work[i+1]))<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;swap(work[i],work[i+1]);<BR>}<BR><BR><BR>void swap(int &amp;a,int &amp;b)<BR>{&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;int temp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;temp=a;<BR>&nbsp;&nbsp;&nbsp;&nbsp;a=b;<BR>&nbsp;&nbsp;&nbsp;&nbsp;b=temp;<BR>}<BR><BR><BR>int ascending(int a,int b)<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;return a&lt;b;<BR>}<BR><BR><BR>int descending(int a,int b)<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;return a&gt;b;<BR>} <BR><BR><BR><BR>编译错误没有了,你的算法我没看<BR>你是不是先学PASCAL再学C的?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:fanghehe 回复日期:2003-08-02 15:49:37
<br>内容:???阁下为什么这么问啊,没有啊,我没学过pascal<BR>我这个代码是从c++ 大学教程里面抄的
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:罗兹维尔 回复日期:2003-08-02 19:52:50
<br>内容:原来是书上的,我看到那程序在函数里定义函数<BR>还以为你以前是学PASCAL的
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

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