# include <stdio.h>void main(){ int n; scanf("%d\n",&n); printf("you typed %d\n",n);} 以上的代码要怎么样输入?
原因:
\n在scanf格式串中不表示等待换行符,而是读取并放弃连续的空白字符。(事实上,scanf格式串中的任何空白字符都表示读取并放弃空白字符。而且,诸如%d这样的格式也会丢掉前边的空白,因此你通常根本不需要在scanf格式串中加入显式的空白。) 因此,“%d\n”中的\n会让scanf读取到非空白字符串为止,而它可能需要读到下一行才能找到...
使用VC6.0编译器,关闭时,出现:
You cannot close the workspace while a build is in progress. Select the stop Build command before closing the workspace
解决方案:
One advice is to update to the latest service pack (SP6).更新服务包。1. Do not build simultaneously in multiple instances.2. Do not run any other instance ...
从键盘输入一个整数(1~20)则以该数字为矩阵的大小,把1,2,3…n*n 的数字按照顺时针螺旋的形式填入其中。例如:输入数字2,则程序输出:1 24 3输入数字3,则程序输出:1 2 38 9 47 6 5输入数字4, 则程序输出: 1 2 3 412 13 14 511 16 15 610 9 8 7
#include<stdio.h>#define N 21void main(){ int i,j,k,n,sum=1,s; int a[N][N]={0}; printf("Input n (n<=20):"); sc...
实际上这个问题很多情况下是由于路径设置的问题引起的,“CL.exe”是VC使用真正的编译器(编译程序),其路径在“VC根目录\VC98\Bin”下面,你可以到相应的路径下找到这个应用程序。因此问题可以按照以下方法解决:点击VC“TOOLS(工具)”—>“Option(选择)”—>“Directories(目录)”重新设置“Excutable Fils、Include Files、Library Files、Source Files”的路径。很多情况可能就一个盘符的不同(例如你的VC装在C,但是这些路径全部在D),改过来就OK了。
以上答案摘自:http://zhidao.baidu.c...
#include<stdio.h>#include<malloc.h>void main(){ char *p1; *p1=malloc(sizeof(char));}
错误信息:
error C2440: '=' : cannot convert from 'void *' to 'char'
错误原因:这里声明的指针是p,而不舍得*p。
修改:
#include<stdio.h>#include<malloc.h>void main(){ char *p1; p1=malloc(sizeof(char));}还是有错误,错误信息如下:
e...
摘自《你必须知道的495个C语言问题》1.5
问:char *p1,p2;这样声明有声明问题?
答:这样的声明没有任何问题,但是它可能不是你想要的。指针声明中的*号并不是基本类型的一部分,它只是包含被声明标示符的声明符(declarator)的一部分。也就是说,在C语言中,声明的语法和解释并非:
类型 标示符;
而是:
基本类型 生成基本类型的东西;
其中“生成基本类型的东西”——声明符——或者是一个简单标示符,或者是如同*p、a[10]或f()这样的符号,表明被声明的变量是指向基本类型的指针、基本类型的数组或者返回基本类型的函数。(当然,更加复杂的声...
# include <stdio.h>int main(void){ void swap(int a, int b); int a = 2, b = 3; swap(a, b); printf("%d\n%d\n", a, b); return 0;}void swap(int a, int b){ int c; c = a; a = b; b = c;}不用编译器,你想想会输出什么?
正确答案:
2
3
你错了吗?知道问什么错了吗?
我个人看法是:
void swap(int a, int b){ ...
bk.view.catalog().start("0");
什么是Win32
Win32是指你现在所使用的操作系统是32位的windows环境.
Win32的重要意义
从单进程单线程到多进程多线程是操作系统发展的一种必然趋势,当年的DOS系统属于单任务操作系统,最优秀的程序员也只能通过驻留内存的方式实现所谓的"多任务",而如今的Win32操作系统却可以一边听音乐,一边编程,一边打印文档。
理解多线程及其同步、互斥等通信方式是理解现代操作系统的关键一环,当我们精通了Win32多线程程序设计后,理解和学习其它操作系统的多任务控制也非常容易。许多程序员从来...
网上观点1:
UNIX 操作系统设计了这种路径分隔法,它使用斜杠:/。由于网络是首先应用在 UNIX 计算机之间的,至今为止,一半以上的网络服务器仍是使用 UNIX 操作系统的,所以网址也沿用了斜杠作路径分隔符。微软在开发 DOS 2.0 的时候,从 UNIX 中借鉴了这种目录结构,但由于 DOS 中,斜杠已经用来作为命令行参数的标志了(UNIX 中用的是“ - ”符),所以只得使用反斜杠:\到了 Windows 时代,很多时候已经没有命令行参数的干扰,加上网络使用的扩展,现在斜杠和反斜杠大多时候可以互换,没有什么影响。
网上观点2:
正斜杠后面是路径,也就是文件名,而反斜杠后是加...
问题:
我在C++中想建一个Dialog类,可总是提示Unable to open the files(E:\mypro\mydialog.h,E:\mypro\mydialog.cpp) for class "MyDlgClass".怎么回事啊?我把工程整个删了重建还是不行啊?请各位指点一下了。多谢多谢!
解决方法:
这是vc的bug解决步骤如下
1。关闭工程2。到你的工程文件夹下对应你的应该是E:\mypro路径下找到.clw文件对应你的应 该是E:\mypro\mydialog.clw删除它(这个是vc的classwizard使用的文件)3。重新打开工程文件,点击vie...
暂时用C++的例子(引用《C++程序设计学习指导与习题答案 (第2版)》)。
示例2.14
#include<iostream>using namespace std;int main(){ //illustrates round-off error:: double x=1000/3.0; //x=1000/3 cout<<"x="<<x<<endl; double y=x-333.0; //y=1/3 cout<<"y="<<y<<endl; double z=3*y-1.0; //z=3*(1/3)-1 cout<...