
computer
AIGPTchina
姓名: 性别: 男 年龄:24岁
目前所在地:深圳 工作年限: 1年
英语级别: 四级 计算机级别:程序员
最高学历: 本科 专业: 计算机科学与技术;
展开
-
有没有函数删除一个buf的某个位置到某个位置buf={1,2,3,4} 我要删除从1-2的位置。得到的是buf={1,4}
#include #include #include int deletpos(char *str,int istart,int iend,char *dest){int len= strlen(str);int i= istart-0;int dellen= iend-istart+1;//2if(i!=0){memcpy(dest,str,i);原创 2015-01-22 11:37:51 · 811 阅读 · 1 评论 -
面试题
#include stdio.h>void main(){int a = 0x12345678;int b = 0x567890AB;int c = 0x7890ABCD;char * p = (char*)&a;char * q = p+ 2;int x = *(int*)q; printf("x=%X",x);}转载 2011-12-11 10:04:26 · 486 阅读 · 0 评论 -
生成不重复的随机数
#include #include #include // 生成一个随机数。生成第二个需要跟第一个比较。生成第三个需要跟前面的比较。// 需要跟前面几个比较处决于int main( void ){ int i,k,value,a[10]; a[0] = rand()%100; for( i = 1; i {value = rand()%100;原创 2011-12-03 23:26:30 · 480 阅读 · 0 评论 -
判断某年某月一号是星期几,怎么判断??????????????
计算星期可以用蔡勒(Zeller)公式(只适合于1582年10月15日之后的情形): w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1 公式中的符号含义如下: c:世纪(年的高两位数); y:年(年的低两位数); m:月(m大于等于3,小于等于14,即在蔡勒公式中,某年的1、2月要看作上一年的13、14月 来计算,比如2005年1月1日要看作2004年的13月1日来计算)转载 2011-12-04 11:58:18 · 5792 阅读 · 0 评论 -
反转字符串
#include #include using namespace std;void rstrcpy(char *from,char *to){ int i= strlen(from)-1; while(i>=0) { *to=from[i];to++;i--; } }int main( ) { char t原创 2011-12-03 23:48:45 · 486 阅读 · 0 评论 -
替代字符的问题
将一个字符串中的 \ 替换成 \\ 即 "aaa\\aaa"→"aaa\\\\aaa" http://topic.youkuaiyun.com/u/20111202/15/77ac6eb8-a1d6-4d9e-bf66-3d3eea940767.html?48829 不知为何这个'\'这个字符如果使用此句话不通过。if(pB[i]转载 2011-12-02 21:35:51 · 674 阅读 · 0 评论 -
写个strcat函数
#include "stdio.h"#include void stracat(char a[],char b[]){ char temp[128]; char *p=temp; int alen = strlen(a); int blen = strlen(b); memcpy(p,a,alen); for(int i =0 ;i { p[alen+原创 2011-12-02 22:35:34 · 767 阅读 · 0 评论 -
去掉前导和后导空格,指针太强大,什么都可以实现。
一个字符串的问题请教大家:要求写一个函数,将一个字符串里面的最后面的空格去掉,比如“helloworld”,world后面有两个空格,函数原型:void strcut(char *str)去掉前导或后导#include#include void trimspace(char *);main(){ char str[100]; gets(st原创 2011-12-01 22:18:00 · 1283 阅读 · 0 评论 -
母字符串中统计子字符串的个数
#include #include #include int main(){ int i,j=0,k,count; char s1[100],s2[100]; printf("Enter main String:"); gets(s1); printf("Enter Sub String:"); gets(s2); count=0;/*转载 2011-12-01 23:10:08 · 823 阅读 · 2 评论 -
读取文件“grade.txt”中的成绩信息。用冒泡法排序和快排进行排序操作
读取文件“grade.txt”中的成绩信息。用冒泡法排序和快排进行排序操作文件内容:姓名 成绩张三 100李四 88王五 92转载 2011-12-01 14:34:59 · 1707 阅读 · 0 评论 -
网易面试题
写一个程序,打印出以下的序列。(a),(b),(c),(d),(e)........(z)(a,b),(a,c),(a,d),(a,e)......(a,z),(b,c),(b,d).....(b,z),(c,d).....(y,z)(a,b,c),(a,b,d)....(a,b,z),(a,c,d)....(x,y,z)....(a,b,c,d,.....x,y,z)转载 2011-12-13 00:03:46 · 561 阅读 · 0 评论 -
如何将一个字符串中的数据 以逗号为标示 分别存到另一个数组中
#include #include int main() { char list[] = "adfafa,bdfafaf,cdfsdfaf,ddfafaf,edffafs"; char list2[10][20]={0}; char rule[] = ","; char *token; int tmplen=0; int of转载 2011-12-14 23:07:23 · 2008 阅读 · 0 评论 -
指针数组
知识点:1、2、3、4、51、指向数组的指针,指针数组的区别: BYTE arry[10]={1,2,3}; BYTE *ptrarry=arry;2、指针数组(字符指针数组)每个数组都是一个指针 char *strarry[3]={"hello","test","tttt"};3、指向字符串的字符指针(字符指针一般用来指向字符串) 字符串有两种表达方式:一、字符数组'/0'结尾;二、字符串常量(用字符指针来表示) char *str ="string"; cout cout 为什么呢? 这个是规原创 2011-04-06 18:14:00 · 467 阅读 · 0 评论 -
unsigned char * 与 char *区别
为什么程序 定义的是unsigned char * 也可以求长度出来。VC下不行,我想问下为什么要定义成 unsigned char * 呢,unsigned char *与char *定义的数据类型有什么区别呢?一般 unsigned char * 是来指向什么数据,char *有是来指向什么数据类型呢? unsigned char *是一个指向unsigned char的数据类型原创 2012-07-25 18:30:56 · 2293 阅读 · 0 评论 -
MFC建立一个文档视图的工程,然后在窗口上显示数据
一、建立一个文档视图的工程,然后在窗口上显示数据。1、 阅读《MFC Windows应用程序设计》2、 记录笔记。(1)、什么是消息?---何时,何地,发了什么事情。(2)、MFC的机制----应用程序处于主导地位。(3)、主函数:负责创建应用程序的界面-窗口。建立消息循环。CWinApp.(4)、窗体。WndProc.(5)、Class CWinApp ---原创 2012-07-25 18:35:50 · 2793 阅读 · 0 评论 -
函数指针学习
一、定义:函数指针是指向函数的指针变量。 因而“函数指针”本身首先应是指针变量,只不过该指针变量指向函数。这正如用指针变量可指向整型变量、字符型、数组一样,这里是指向函数。如前所述,C在编译时,每一个函数都有一个入口地址,该入口地址就是函数指针所指向的地址。有了指向函数的指针变量后,可用该指针变量调用函数,就如同用指针变量可引用其他类型变量一样,在这些概念上是一致的。函数指针有两个用途:调用函转载 2012-03-16 11:44:42 · 485 阅读 · 0 评论 -
P面试题
1、#includevoid main(){ int i=0; char c= 0x80; i = c; if(i>=0) { printf("1"); } else printf("2");}char 的范围为-128 (0x80)至+127.2、void main(){ for(int i=0;i }原创 2012-03-14 09:03:12 · 497 阅读 · 0 评论 -
linux 命令学习。
一、cp的意思是复制,-cp -rf的意思是强制复制某个文件夹。 二、ln -s 用于建立符号连接(又称软连接) 是linux中又一个非常重要命令,请大家一定要熟悉。它的功能是为某一个文件在另外一个位置建立一个不同的链接, 这个命令最常用的参数是-s,具体用法是:ln –s 源文件 目标文件。原创 2012-03-13 14:15:56 · 540 阅读 · 0 评论 -
解决typedef unsigned long long DDWORD; 在VC下编译不过问题。
http://www.byvoid.com/blog/c-int64/C/C++的64位整型計算機技術Add comments4,177 views在C/C++中,64为整型一直是一种没有确定规范的数据类型。现今主流的编译器中,对64为整型的支持也是标准不一,形态各异。一般来说,64位整型的定义方式有long long和__int64两种(VC还支持_int转载 2012-01-16 15:45:30 · 5560 阅读 · 0 评论 -
共用体的使用
以下是谭浩强老师的讲解。很容易懂。真的是大师。 1、有时需要将几个不同时出现的变量共享一个内存单元,如:将一个整型变量、实型变量、字符型变量共同放入同一个地址空间(当然这几个变量不能同时用),怎么办? C提供了构造类型——共用体(联合体)类型支持。 2、共用体变量特点:几个成员共用一段内存。 引申1:共用体变量的内存长度是多少?原创 2012-01-07 16:00:19 · 776 阅读 · 0 评论 -
VC20个技巧
一、打开CD-ROMmciSendString("Set cdAudio door open wait",NULL,0,NULL);二、关闭CD_ROMmciSendString("Set cdAudio door closed wait",NULL,0,NULL);三、关闭计算机OSVERSIONINFO OsVersionInfo; //包含操作系统版本信息的数据结转载 2011-12-14 23:05:08 · 652 阅读 · 0 评论 -
单词排序
编写一个程序,从一个文件中读入单词(即:以空格分隔的字符串),并对单词进行排序,删除重复出现的单词,然后将结果输出到另一个文件中。【输入形式】源文件名和目标文件名在执行时作为程序命令行参数输入,例如若程序名为sort,源文件名和目标文件名分别为sort.in和sort.out,则命令行为:sort sort.in sort.out。程序将从当前目录下sort.in文件中读入单词。转载 2011-12-01 12:43:32 · 3246 阅读 · 0 评论 -
二进制转换成十进制、及约瑟夫问题
1、int main() /*输入的是2进制数*/ { char buf[32]; /*输入的二进制 不超过32位*/ gets(buf); int num =0; for (int i=0; i { num +=(int)pow(2,strlen(buf)-i-1)*(buf[i]-48); } printf("二进制数%s的十进转载 2011-11-30 00:09:03 · 635 阅读 · 0 评论 -
十六进制的TXT文件怎么以十六进制读出来?
txt中的内容是4E6574776F726B205365637572697479 但是运行后的不是txt中的十六进制内容,#include#include#include#includetypedef unsigned char BYTE;typedef unsigned int DWORD; /* 32 bit data t原创 2011-11-28 22:56:57 · 7416 阅读 · 0 评论 -
指向常量的指针
<br />指向常量的指针包括如下四点:<br /> <br />1、指向常量的指针不能通过间接访问去 修改指针所指向的内存空间的内容;<br />例如:<br />int i =9;<br />const int * fp = &i;<br />*fp =9; //错误 <br /> <br />2、指向常量的指针只限制了间接访问操作,但可以修改指向常量指针的指针变量;<br />例如:int i =9,j=8;<br />const int *fp = &i;<br />const int *fp =原创 2011-04-25 16:17:00 · 540 阅读 · 0 评论 -
再谈指针、指针的数据类型
一、指针定义 分三部分: 例如、int * i, char *str,float* k;1、i,str,k 是指针类型变量;2、* 表示定义的是一个指针变量、而非一般变量;3、int、char、float 是指针所指向的内存空间中存放的数据的类型。可以这样理解:int*,char *,float * 看成是数据类型,i,str,k是三种数据类型的变量。二、指针的数据类型;一个char *,与int *指针有什么区别?(一个指向char 型的指针 与一个指向int 型的指针有什么区别) 指针变量只有一种,指针原创 2011-04-12 23:14:00 · 1208 阅读 · 0 评论 -
字符串乱码
<br />从数据库表里读出一个字段key_kek的值。在数据库里这个值为空的话。str_key显示出来就是乱码。<br /> <br />乱码的问题通常要么就是字符集的问题,要么就是没有初始化。这里是没有初始化。<br />用VC6工程的时候默认是“多字符集”(Multi-Byte Character Set)<br /><br />str_key = m_pRecordset->GetCollect("key_kek").bstrVal;<br /><br />AfxMessageBox(str_key原创 2011-04-11 13:24:00 · 675 阅读 · 0 评论 -
指针加1
一、指针变量的加减运算只能对数组指针变量进行。(才有意义)int a[7] = {1,2,3,4,5,6,7};a+1 等于 a+sizeof(a)*1;sizeof(a)=4*7=28记住!a指针加n = sizeof(a)*n110412 wcg原创 2011-04-12 18:07:00 · 1744 阅读 · 1 评论 -
用VC在 数据库表里增加一个字段读出,然后显示、保存
一、保存: 在采用ADO访问ACCESS数据库的时候,出现IDispatch error #3092错误的原因之一是在SQL语句中使用了保留关键字。key是关键字。strSql = strSql+ "', key_kek='" + key_kek; m_key.GetWindowText(key_kek); m_key 是关联 EDIT的变量, 这句话是把m_key的caption 值复制 到 变量key_kek。 二、读出、然后显示:str_key = m_pRecordset->GetCollect原创 2011-04-10 22:27:00 · 612 阅读 · 0 评论 -
三目(三木培训)运算
<br />(i?0:12) 三目运算<br />(i?12:0) 三目运算<br /> <br /><表达式1>?<表达式2>:<表达式3>; "?"运算符的含义是: 先求表达式1的值, 如果为真, 则执行表达式2,并返回表达式2的结果 ; 如果表达式1的值为假, 则执行表达式3 ,并返回表达式3的结果. <br /> <br />有些人写程序喜欢用变量做表达式。一下看的不习惯。<br /> <br />110408 wcg原创 2011-04-08 16:43:00 · 870 阅读 · 0 评论 -
如何知道代码运行的时长
<br /> DWORD t0;<br /> ofs=0;<br /> t0=GetTickCount();<br /> while(GetTickCount()-t0 < 5000)<br />{<br /> <br />}Example Code<br />The following example demonstrates how to handle timer wrap around.DWORD dwStart = GetTickCount();// Stop if this has tak原创 2011-04-07 17:04:00 · 699 阅读 · 0 评论 -
函数原型是否要加extern
<br />A文件需要使用B文件中的函数fun()<br />只需在A文件中加上fun()的函数原型。不需要增加extern也可。有些人说是C++的 编译器导致这样。<br />其实,函数没有外部函数,内部函数之分。如果声明了函数原型就会在本文件或其他文件中去查找此函数。<br /> <br />2011-4-2<br />wcg原创 2011-04-02 08:42:00 · 819 阅读 · 0 评论 -
char表示数值范围
char 能表示的最大值是多少? unsinged char 能表示的数值是多少?char 是一个有符号数。知识点(原码、反码、补码)原码就是取 绝对值。反码是原码取反。补码是反码+1。singed char 原码 :1111 1111-01111111 - 127 --- +127还有一个 1000 0000 用它来表示 -128,因为没有负0的概念。计算机里负数都是用补码来表示。所以就是-128- 1270-2552011-03-28 wcg原创 2011-03-28 12:09:00 · 10598 阅读 · 1 评论 -
VC工具的常识
一、定义字符数组后,如果没有memset的话,系统自动初始化的是0X20即空格.二、UpdateData(TRUE); // 从界面更新数据到变量 例如:从界面上输入的值要赋值到变量中去。三、UpdateData(FALSE);也就是 UpdateData(0);// 从变量到界面 例如:给关联的变量赋值后,要在界面上显示出来。四、不知道在VC中自己写个函数不知道放在哪里?放到定义全局变量里。使用的时候申明下就OK.wcg 20110502原创 2011-05-02 21:22:00 · 773 阅读 · 0 评论 -
按位与操作
按位与运算符"&"是双目运算符。其功能是参与运算的两数各对应的二进位相与。只有对应的两个二进位均为1时,结果位才为1,否则为0。参与运算的数以补码方式出现。例如:9&5可写算式如下: 00001001 (9的二进制补码) &00000101原创 2011-07-25 15:04:13 · 8469 阅读 · 2 评论 -
从键盘输入一个英文句子,并处理:去掉最左边和最右边的空白(空格、制表符),把连续的空白替换为一个空格。
#include #define SIZE 80void readSentence(char * buf, int length);int main(){ char buffer[SIZE]; printf("请输入一个英文句子:\n"); readSentence( buffer, SIZE ); printf("处理后:\n[%s]\n", buffer );转载 2011-11-28 22:34:55 · 2528 阅读 · 0 评论 -
在VC中把一个int类型的数据显示出来。
第一种方法: int test; char sztest[10]; test= m_comm.GetCurSel() + '0'; itoa(test,sztest,10); AfxMessageBox(sztest);第二种方法:int i =20; CString strNum;strNum.Format("%d", i); AfxMessage原创 2011-11-22 15:54:04 · 842 阅读 · 0 评论 -
AfxMessageBox的头文件
AfxMessageBox的头文件 我发现AfxMessageBox的头文件真是很容易忘啊!这次我一定要记住了:#include 在这里扯远一点:今天在包含头文件的时候竟然碰到了"unknown character '0xa1' ”的编译错误,找了半天,才发现竟然是全角空格的问题,晕死了。原来在包含头文件的时候,不小心按了一个键,弄成全角的了,结果打出的空格键是全角转载 2011-11-22 14:09:19 · 15213 阅读 · 1 评论 -
常见C语言面试题之一:字符串代替、字符串转换整数
1.#include "stdafx.h"2.using namespace std;3.//--------字符替代问题4.char* Translate(char* pSrc, const char cFindChar, const char* pReplaceStr,转载 2011-10-12 09:06:41 · 1429 阅读 · 1 评论 -
C语言运算符优先级等级口诀
C语言运算符优先级等级口诀C语言运算符优先级等级口诀 [圆方括号、箭头一句号] [自增自减非反负、针强地址长度] [乘除,加减,再移位] [小等大等、等等不等] [八位与],[七位异],[六位或],[五与],[四或],[三疑],转载 2011-08-30 17:11:05 · 1634 阅读 · 0 评论