导航:首页 > 源码编译 > vc编程源码收集

vc编程源码收集

发布时间:2022-06-10 08:31:25

Ⅰ VC 源代码学习

vc源代码:http://sites.google.com/site/qiujiejia1/Home/VC_SourceCode.zip

通用控件使用详解: http://sites.google.com/site/qiujiejia1/Home/通用控件使用详解.zip

CSDN VC编程经验总结:http://sites.google.com/site/qiujiejia1/Home/CSDN_VC编程经验总结.zip

vc++ 编程指南 :http://sites.google.com/site/qiujiejia1/Home/vc++编程指南.zip

MFC问答 : http://sites.google.com/site/qiujiejia1/Home/MFC问答.zip

MFC教程
下载地址:http://cid-3ba16e78a53d2d3d.skydrive.live.com/self.aspx/ShareData/MFC%e6%95%99%e7%a8%8b.rar

建议你看看孙鑫的视频教程,这样学习起来没那么吃力。
下载地址:http://www.verycd.com/topics/35626/

最后希望你在学习VC++和MFC编程前先学习win32编程,这样不至于到后来学习不下去。个人意见,仅供参考。

Ⅱ VC编程技术600个大型项目源码

确实不错哦,给我个最佳答案吧,呵呵

Ⅲ directx9.0与vc++6.0编程源码

vc++6.0开发3D软件,环境配置如下:
1.安装DIRECTX 9.0 SDK开发包
2.设置VC++编译环境
中文版示例:
工具->选项->目录->include files
点加号添加新路径,选择你的DIRECTX SDK的安装路径下的 include目录
之后选择->Library files
点加号添加新路径,选择你的DIRECTX SDK的安装路径下的 Lib目录
即可
当然你在开发的时候应用到什么库文件,则需要在你的工程里面引用该库文件
具体方法:
工程->设置->选择连接选项卡->在对象/模块库一栏中添加 你所需要的库文件
如D3D9.LIB,D3D8.LIB,dinput.lib等.

之后你就可以根据相关的DIRECTX API来开发3D软件了.

Ⅳ VC++编程时,怎么才可以看到资源代码;比如你创建一个菜单,在哪可以看到源代码

在菜单中选 打开(Open),找到.rc文件,在对话框下面的打开方式里选择用 文本(Text)模式打开,就ok了.但这个时候 左侧的resouces的pane里的东西就会打不开了.必须关闭已打开的文本模式的rc文件,才会恢复自动显示的模式.

Ⅳ 急求VC源代码

(1)

#include<iostream>
using namespace std;

int main()
{
float num1,num2;
char ch;

begin:

cout<<"请输入第1个数:\n";
cin>>num1;
cout<<"请输入运算符:\n";
cin>>ch;
cout<<"请输入第2个数:\n";
cin>>num2;

switch(ch)
{
case '+':
cout<<"结果:"<<num1+num2<<endl;
break;
case '-':
cout<<"结果:"<<num1-num2<<endl;
break;
case '*':
cout<<"结果:"<<num1*num2<<endl;
break;
case '/':
if(int(num2)!=0)
{
cout<<"结果:"<<num1/num2<<endl;
}
else
{
cout<<"除数不能为0,请重新输入.\n";
goto begin;
}
break;

default:
cout<<"你输入的运算符错误,请重新输入.\n";
goto begin;
}
getchar();
return 0;
}
(2)

#include <iostream>
#include<string>
using namespace std;

int main()
{
char num1[50];
char num2[50];
char ch;
int n=0;
int i=0;
float count=0;
string inStr;

begin:
cout<<"请输入:";
cin>>inStr;

memset(num1,0,50);
memset(num2,0,50);

for(i=0; inStr[i]!='\0'; i++)
{
if(inStr[i]=='+' ||inStr[i]=='-' ||inStr[i]=='*' ||inStr[i]=='/' )
{
break;
}
else
{
num1[i]=inStr[i];
}
}

ch=inStr[i];
i++;

for(; inStr[i]!='\0'; i++)
{
if(inStr[i]=='+' ||inStr[i]=='-' ||inStr[i]=='*' ||inStr[i]=='/' )
{
break;
}
else
{
num2[n]=inStr[i];
n++;
}
}

switch(ch)
{
case '+':
count=float(atoi(num1))+float(atoi(num2));
break;
case '-':
count=float(atoi(num1))-float(atoi(num2));
break;
case '*':
count=float(atoi(num1))*float(atoi(num2));
break;
case '/':
if(atoi(num2)!=0)
{
count=float(atoi(num1))/float(atoi(num2));
}
else
{
cout<<"除数不能为0"<<endl;
goto begin;
}
break;
}

cout<<"结果是:"<<count<<endl;
}
祝你好运了!!!!!!!!!!!!!

Ⅵ 用C语言编程,要完整的源代码;谢谢!

/*万年历*/
#include<stdio.h>
#include<stdlib.h>

int isLeap(int year) //判断闰年
{
if(year%4!=0)
{
return 0;
}
else if(year%100!=0)
{
return 1;
}
else if(year%400!=0)
{
return 0;
}
else
{
return 1;
}
}

int GetMonthDays(int year,int month)//判断天数
{
switch(month){
case 1:case 3:case 5:case 7:case 8:case 10:case 12:return 31;break;
case 4:case 6:case 9:case 11:return 30;break;
case 2:if(isLeap(year)==1)
{
return 29;
}
else
{
return 28;
};break;
default:return 0;
}
}

int GetWeekDay(int year,int month,int day)//判断days天是星期几
{
int days;//总天数
int i=1;//计月份
int weekday;
days=(year-1)*365+(year-1)/4+(year-1)/400-(year-1)/100;
while(i<month)
{
days+=GetMonthDays(year,i);
i++;
}
days+=day;
weekday=days%7;
return weekday;
}

void PrintMonthCalender(int startDay,int days)//输出日历
{
int m=0;//计数空
int n=1;//计日期
while(m<startDay)
{
printf(" ");
m++;
}
while(n<=days)
{
printf("%d ",n);
if((n+m)%7==0)
{
printf("\n");
}
n++;
}
}

main()
{
int year,month,startDay,days;
printf("Please input year and month:");
scanf("%d %d",&year,&month);

startDay=GetWeekDay(year,month,1)%7;
days=GetMonthDays(year,month);//取得起始天和天数

printf("The result is:\n %d-%d\nSun. Mon. Tue. Wed. Thu. Fri. Sat.\n",year,month);
PrintMonthCalender(startDay,days);
system("pause");
return 0;
}

哇咔咔。。终于找到了,我们上个月的作业,哦哦呵呵。。。给我分吧

Ⅶ VC++编程时钟 实践急需源代码~

import java.applet.Applet;
import java.util.Date;
import java.util.*;
import javax.swing.*;
import java.awt.Graphics;
import java.util.Calendar;
import java.util.GregorianCalendar;

//通过Runnable接口定义线程类
public class RunnableThread extends JApplet implements Runnable
{
Thread clockThread;
public void start()
{
if (clockThread==null)
{
clockThread=new Thread(this,"Clock");
clockThread.start();
}
}

public void run()
{
while(clockThread!=null)
{
repaint();//实际上是显示一个时钟
try
{
clockThread.sleep(1000);
}catch(InterruptedException e) {}
}
}

public void paint(Graphics g)
{
super.paint(g);
Calendar now = GregorianCalendar.getInstance();
g.drawString(now.get(Calendar.HOUR)+":"+now.get(Calendar.MINUTE)+":"+now.get(Calendar.SECOND),5,10);

}

public void stop()
{
clockThread = null;
clockThread=null;
}

}

Ⅷ 如何看一般的小程序的原始代码

在VC类编程网站都有,
VC知识库
VC在线http://www.vczx.com/srccode/list.php
VC源动力http://www.xiaozhou.net/Type.asp?TypeId=15
编程爱好者http://www.programfan.com/code/codelist.asp?softclass=105

太多了

雷霆战机源代码
http://www.xiaozhou.net/uploadfile/zip/2006-4/plane.zip
中国象棋游戏源代码
http://shhttp.codesky.net/2008/200731319308056.rar
收集了几十个用VC开发的小游戏源代码
http://61.137.90.75/downloads90/sourcecode/game/1985543VCGame_Rcs.rar

http://blog.vckbase.com/Files/iwaswzq/ShuDu.rar

Ⅸ VC 6.0的C语言库函数的源代码可以在哪找到

深入printf
/***
*printf.c - print formatted
*
* Copyright (c) 1985-1997, Microsoft Corporation. All rights reserved.
*
*Purpose:
* defines printf() - print formatted data
*
*******************************************************************************/

#include
#include
#include
#include
#include
#include
#include

/***
*int printf(format, ...) - print formatted data
*
*Purpose:
* Prints formatted data on stdout using the format string to
* format data and getting as many arguments as called for
* Uses temporary buffering to improve efficiency.
* _output does the real work here
*
*Entry:
* char *format - format string to control data format/number of arguments
* followed by list of arguments, number and type controlled by
* format string
*
*Exit:
* returns number of characters printed
*
*Exceptions:
*
*******************************************************************************/

int __cdecl printf (
const char *format,
...
)
/*
* stdout ''PRINT'', ''F''ormatted
*/
{
va_list arglist;
int buffing;
int retval;

va_start(arglist, format);

_ASSERTE(format != NULL);//断言宏。如果输出格式字符串指针为空,则在DEBUG版下断言,报告错误。

_lock_str2(1, stdout);

buffing = _stbuf(stdout);//stdout:指定输出到屏幕

retval = _output(stdout,format,arglist);

_ftbuf(buffing, stdout);

_unlock_str2(1, stdout);

return(retval);
}
以上为printf()的源代码
1、从含有可选参数函数中获得可选参数,以及操作这些参数
typedef char *va_list;
void va_start( va_list arg_ptr, prev_param );
type va_arg( va_list arg_ptr, type );
void va_end( va_list arg_ptr );
假定函数含有一个必选参数和多个可选参数,必选参数声明为普通数据类型,且能通过参数名来获得该变量的值。可选参数通过宏va_start、va_arg和va_end(定义在stdarg.h或varargs.h中)来进行操作,即通过设置指向第一个可选参数指针、返回当前参数、在返回参数后重新设置指针来操作所有的可选参数。
va_start:为获取可变数目参数的函数的参数提供一种便捷手段。设置arg_ptr为指向传给函数参数列表中的第一个可选参数的指针,且该参数必须是va_list类型。prev_param是在参数列表中第一个可选参数前的必选参数。
va_arg:返回由arg_ptr所指向的参数的值,且自增指向下一个参数的地址。type为当前参数的类型,用来计算该参数的长度,确定下一个参数的起始位置。它可以在函数中应用多次,直到得到函数的所有参数为止,但必须在宏va_start后面调用。
va_end:在获取所有的参数后,设置指针arg_ptr为NULL。
下面举例说明:
#include
#include
int average( int first, ... );
void main( void )
{
/* Call with 3 integers (-1 is used as terminator). */
printf( "Average is: %d\n", average( 2, 3, 4, -1 ) );

/* Call with 4 integers. */
printf( "Average is: %d\n", average( 5, 7, 9, 11, -1 ) );

/* Call with just -1 terminator. */
printf( "Average is: %d\n", average( -1 ) );
}

int average( int first, ... )
{
int count = 0, sum = 0, i = first;
va_list marker;

va_start( marker, first ); /* Initialize variable arguments. */
while( i != -1 )
{
sum += i;
count++;
i = va_arg( marker, int);
}
va_end( marker ); /* Reset variable arguments. */
return( sum ? (sum / count) : 0 );
}
返回值为:
Average is: 3
Average is: 8
Average is: 0
综上所述,在printf()函数中,可以只输出一个字符串,也可按照一定的形式输出含有多个可选参数的字符串信息。因此,首先就要通过这些宏来获取所有的可选参数。在上面的源码可以看出printf()中,只使用了宏at_start,将可选参数的首地址赋给了arglist。
2、锁定字符串及输出字符串到屏幕
#define _lock_str2(i,s) _lock_file2(i,s)
void __cdecl _lock_file2(int, void *);
#define _unlock_str2(i,s) _unlock_file2(i,s)
void __cdecl _unlock_file2(int, void *);
int __cdecl _stbuf(FILE *);
void __cdecl _ftbuf(int, FILE *);
int __cdecl _output(FILE *, const char *, va_list);
在output函数中,读取格式字符串中的每一个字符,然后对其进行处理,处理方式根据每一个字符所代表的意义来进行,如:普通字符直接利用函数WRITE_CHAR(ch, &charsout);输出到控制台。
其中的主要部分是对转换说明符(d,c,s,f)的处理,现在将对其中的部分代码进行详细说明,这里只说明最基本的转换说明符,对这些须基本的转换说明符进行修饰的修饰符,程序中单独进行处理。下面是函数output()(output.c)部分源代码:
case ST_TYPE:
//表示当前处理的字符的类型为转换说明符。
...
switch (ch) {
//下面对参数的获取都是利用宏va_arg( va_list arg_ptr, type );来进行的。
case ''c'': {
//从参数表中获取单个字符,输出到缓冲字符串中,此时,type=int
buffer[0] = (char) get_int_arg(&argptr); /* get char to print */
text = buffer;
textlen = 1; /* print just a single character */
}
break;

case ''s'': {
//从参数表中获取字符串,输出到缓冲字符串中,此时,type=char*
int i;
char *p; /* temps */
text = get_ptr_arg(&argptr);
...
}
break;

case ''w'': {
//对宽字符进行处理
...
} /* case ''w'' */
break;
...
case ''e'':
case ''f'':
case ''g'': {
//对浮点数进行操作
...
#if !LONGDOUBLE_IS_DOUBLE
/* do the conversion */
if (flags & FL_LONGDOUBLE) {
_cldcvt((LONGDOUBLE*)argptr, text, ch, precision, capexp);
va_arg(argptr, LONGDOUBLE);
//对长双精度型进行处理,此时,type=long double
}
else
#endif /* !LONGDOUBLE_IS_DOUBLE */
{

//对双精度型进行处理,此时,type=double
_cfltcvt((DOUBLE*)argptr, text, ch, precision, capexp);
va_arg(argptr, DOUBLE);
}
...
break;
//对整型变量处理
case ''d'':
case ''i'':
...
goto COMMON_INT;

case ''u'':
radix = 10;
goto COMMON_INT;

case ''p'':
...
goto COMMON_INT;

case ''o'':
...

注:对于浮点型double和long double,有相应的转换说明符(%f表示双精度型,%lf表示长双精度型),而float却没有。其中的原因是,在K&RC下,float值用于表达式或用作参数前,会自动转换成double类型。而ANSI C一般不会自动把float转换成double。有些程序已假定其中的float参数会被转换成double,为了保护大量这样的程序,所有printf()函数的float参数还是被自动转换成double型。因此,在K&RC或ANSI C下,都无需用特定的转换说明符来显示float型。
综上所述,转换说明符必须与待打印字符的类型。通常,用户有种选择。例如,如要打印一个int类型的值。则只可以使用%d,%x或%o。所有这些说明符都表示要打印一个int类型的值;它们只不过提供了一个数值的几种不同表示。类似一,可以用%f、%g和%e来表示double类型的值。但如果转换说明与类型不匹配,将会出现意想不到的结果。为什么呢?问题就在于C向函数传递信息的方式。
这个失败的根本细节与具体实现相关。它决定了系统中的参数以何方式传递。函数调用如下:
float n1;
double n2;
long n3;
long n4;
...
printf("%ld,%ld,%ld,%ld",n1,n2,n3,n4);
这个调用告诉计算机,要把变量n1,n2,n3和n4的值交给计算机,它把这些变量放进称作栈(stack)的内存区域中,来完成这一任务。计算机把这些值放进栈中,其根据是变量的类型而不是转换说明符,比如n1,把8个字节放入栈中(float被转换成double),类似地,为n2放了8字节,其后给n3和n4各放了4个字节。接着,控制的对象转移到printf();此函数从栈中读数,不过在这一过程中,它是在转换说明符的指导下,读取数值的。说明符%ld指定printf()应读4个字节(va_arg( va_list arg_ptr, type )中type=long),因此printf()读入栈中的4个字节,作为它的第一个值。但是这只是n1的前半部分,这个值被看成一个long整数。下一个说明符%ld读入4个字节,这正是n1的后半部分,这个值被看成第二个long整数。类似地,第三、第四次又读入n2的前后两部分。因此,尽管我们对n3和n4使用了正确的说明符,printf()仍然会产生错误。

这里也可以下载
http://mirrors.kernel.org/gnu/glibc/glibc-2.7.tar.gz

Ⅹ 求一算法的VC源码的c语言编程....小弟刚学算法,根据算法写程序不会,大哥大姐们帮帮忙啊!万分感激.....

c代码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
int ListA[100]; //为ListA申请100个int大小的空间,自己决定,但是得保证不会非法访问
int ListB[100];
int lenA, lenB;
printf("输入5个整数到ListA中:");
for(int i = 0; i < 5; i++) scanf("%d",&ListA[i]);
printf("输入5个整数到ListB中:");
for(int i = 0; i < 5; i++) scanf("%d",&ListB[i]);

lenA = 5;
lenB = 5;
for(int i = 0; i < lenB; i++)
{
int e = ListB[i]; //取ListB中第i个数据元素赋给e
int j;
for(j = 0; j < lenA; j++)
{
if(ListA[j] == e) // 如果ListA中存在e,停止寻找
break;
}
if(j == lenA) //表示一直没找到和e相等的元素
ListA[lenA++] = e; //ListA长度加1,插入e
}
for(int i = 0; i < lenA; i++)
printf(" %d",ListA[i]);
return 0;
}

阅读全文

与vc编程源码收集相关的资料

热点内容
最好的单片机项目 浏览:836
CHM不联网可以编译吗 浏览:7
php网站模板工作原理 浏览:409
编程积木python 浏览:636
李玲歪歪压缩包 浏览:22
用友加密狗补办多少钱 浏览:401
公司中的服务器有什么用 浏览:664
積架小型空气压缩机 浏览:559
绿盾文档加密系统哪里有卖 浏览:641
我的世界怎么开挂在服务器里面 浏览:791
西门子自锁正反转编程图 浏览:752
出国英语pdf 浏览:923
算法线性匹配 浏览:678
山东省dns服务器云主机 浏览:558
安卓5g软件怎么隐藏 浏览:842
编译内核空间不足开不了机 浏览:890
汉纪pdf 浏览:477
在哪里下载国家医保app 浏览:660
没有与文件扩展关联的编译工具 浏览:430
我的世界反编译mcp下载 浏览:24