CC++编程答疑解惑

CC++编程答疑解惑

ID:35090376

大小:1003.99 KB

页数:284页

时间:2019-03-17

CC++编程答疑解惑_第1页
CC++编程答疑解惑_第2页
CC++编程答疑解惑_第3页
CC++编程答疑解惑_第4页
CC++编程答疑解惑_第5页
资源描述:

《CC++编程答疑解惑》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、C/C++编程答疑解惑1.C/C++编程1.1:遇到问题怎么解决A论坛的精华区也有相应的讨论,许多可以直接解决你的问题,也可以GOOGLE查找,并看看精华区。如果已找了GOOGLE并看了精华区,但是对某些方面不理解,那么就在论坛上发问。发问时标题要清楚,并把你的问题描述清楚。许多人不会看你帖子的内容,所以在标题中写清楚问题也是很重要的。如果要粘贴代码,那么使用发言功能中的CODE功能,这样可以保证代码不会乱,能有更多人看懂你代码。当别人准确回答了你的问题时,应该说声谢谢,表示这个问题已回答,并表示对帮助你的人的感谢。这样会让更多的人觉得你的一个好学有礼貌的人,

2、从而会更注意你的问题。如果你按上面这些方法做了,并不能保证你的发言一定能回答,因为不是每个人什么问题都知道,但可以保证会有更多人关注你的问题,回答的可能性会更高。1.2:STLstring怎么转换大小写A:使用STL算法中的transform函数代码:  stringstr22="ThisISaMiXedCaSEstRINg";  transform(str22.begin(),str22.end(),str22.begin(),tolower);1.3:怎样生成动态库A:创建步骤:首先创建object文件,这个文件将加入通过gcc–fPIC参数命令加入到共享

3、函数库里面。PIC的意思是“位置无关代码”(PositionIndependentCode)。下面是一个标准的格式:代码:gcc-shared-Wl,-soname,your_soname-olibrary_namefile_listlibrary_list下面再给一个例子,它创建两个object文件(a.o和b.o),然后创建一个包含a.o和b.o的共享函数库。例子中”-g”和“-Wall”参数不是必须的。代码:gcc-fPIC-g-c-Walla.cgcc-fPIC-g-c-Wallb.cgcc-shared-Wl,-soname,liblusterstu

4、ff.so.1-oliblusterstuff.so.1.0.1a.ob.o-lc下面是一些需要注意的地方:·不用使用-fomit-frame-pointer这个编译参数除非你不得不这样。虽然使用了这个参数获得的函数库仍然可以使用,但是这使得调试程序几乎没有用,无法跟踪调试。·使用-fPIC来产生代码。使用shared说明生成动态库,使用soname说明生成的库名·某些情况下,使用gcc来生成object文件,需要使用“-Wl,-export-dynamic”这个选项参数。通常,动态函数库的符号表里面包含了这些动态的对象的符号。这个选项在创建ELF格式的文件时

5、候,会将所有的符号加入到动态符号表中。可以参考ld的帮助获得更详细的说明。star3s补充:对于C++程序要使用EXTERN“C”说明输出接口代码:  extern"C"  {   intsoTest(inta,intb);  }  intsoTest(inta,intb)  {   returna+b;  }1.4:怎样指定程序链接某个库的动态库或静态库版本A:使用Bdynamic和-Bstatic选项。默认情况下,假如共享库可用,连接器会使用共享库。但是-Bdynamic和-Bstatic提供了很好控制库的方法。它们可以决定用共享库还是用静态库。传-Bdy

6、namic和-Bstatic选项给连接器,如下操作:#gcc-omainmain.o-Wl,-Bstatic-lfoo-Wl,-Bdynamic-lbar#gcc-omainmain.o-Wl,-Bstatic告诉连接器所有的库(象libc等等)都使用静态的版本。1.5:请问各UNIX平台下和编译器名kaisakaisa:sunCC(c++)cc(c)alphacxx(c++)cc(c)HPaCC(c++)IBMxlC(c++)1.6:solaris下有没有C函数可以获得进程的相关信息比如:进程名、进程pid、进程所占CPU/Memory、开始时间、运行状态

7、等等。谢谢。liupch:2003-03-1910:03读取/proc/进程号/psinfo这个文件。就用我告诉你的那个函数ioctl(fd,PIOCPSINFO,&procinfo);在看一下procinfo这个结构就知道了。1.7:c++下使用的问题在c++下使用include后为什么编译器会报错呢1.检查你是不是使用g++编译器编译。gcc编c++程序会有问题2.检查在include头文件后有没有使用usingnamespacestd;新的标准C++加了几个关键字,其中最常用的就是namespace(名字空间)加入

8、这个关键字是为了避免在大程序中符号名重

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。