摘要:
GridView有自带的分页功能,但是今天我用的时候出错了。报错:The data source does not support server-side data paging。后来网上查到SqlDataReader 不支持分页,需要用SqlDataAdapter 和DataSet 代替,代码如下。 public DataSet GetAllUserInfo() { SqlConnection myConnection = new SqlConnection( ConfigurationManager.ConnectionStrings["Emerg... 阅读全文
摘要:
WHILE设置重复执行 SQL 语句或语句块的条件。只要指定的条件为真,就重复执行语句。可以使用 BREAK 和 CONTINUE 关键字在循环内部控制 WHILE 循环中语句的执行。语法WHILE Boolean_expression { sql_statement | statement_block } [ BREAK ] { sql_statement | statement_block } [ CONTINUE ]参数Boolean_expression返回 TRUE 或 FALSE 的表达式。如果布尔表达式中含有 SELECT 语句,必须用圆括号将 SELECT 语句括起来。{sql 阅读全文
摘要:
一道面试题引发的问题,首先要知道[]的优先级高于*,题目:char **p,a[6][8]; 问p=a是否会导致程序在以后出现问题?为什么?直接用程序说明:#include<stdio.h>void main(){ char **p,a[6][8]; p = a; printf("\n");}编译,然后就会发现通不过,报错:错误1error C2440: “=”: 无法从“char [6][8]”转换为“char **”于是乎,我看了下《C专家编程》里10.5节—使用指针向函数传递一个多维数组。方法一,函数是 void fun(int arr[2][3]); 这 阅读全文
摘要:
一级指针做形参:首先一定要明白形参和你传递参数的那个实参是两个不同的变量,即使同名也还依然不同。指针传递的是一个变量或者一个值的地址,但是它本身还是采用值传递的方式。即你不能使它指向另外一块地址,但是你可以改变它指向的空间里存的值。二级指针做形参:二级指针也是传值,但是他指向的地址是个一维指针,所以可以改变二维指针指向的地址空间里的内容也就是要申请空间的一维指针,不能改变二维指针本身的值,即不能让他指向一个新的一维指针。所以二维指针传递的是一个一维指针。具体看下面这个程序以及输出:#include<stdio.h>#include <malloc.h>#include 阅读全文
摘要:
一. 在c中分为这几个存储区1.栈 - 由编译器自动分配释放2.堆 - 一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收3.全局区(静态区),全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。- 程序结束释放4.另外还有一个专门放常量的地方。- 程序结束释放在函数体中定义的变量通常是在栈上,用malloc, calloc, realloc等分配内存的函数分配得到的就是在堆上。在所有函数体外定义的是全局量,加了static修饰符后不管在哪里都存放在全局区(静态区),在所有函数体外定义的static变 阅读全文
摘要:
在C语言中,static的字面意思很容易把我们导入歧途,其实它的作用有三条。(1)先来介绍它的第一条也是最重要的一条:隐藏。当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。为理解这句话,我举例来说明。我们要同时编译两个源文件,一个是a.c,另一个是main.c。下面是a.c的内容chara='A';//globalvariablevoidmsg(){printf("Hello\n");}下面是main.c的内容intmain(void){externchara;//externvariablemustbedeclaredb 阅读全文
摘要:
strcpy和memcpy都是标准C库函数,它们有下面的特点。strcpy提供了字符串的复制。即strcpy只用于字符串复制,并且它不仅复制字符串内容之外,还会复制字符串的结束符。已知strcpy函数的原型是:char* strcpy(char* dest, const char* src);memcpy提供了一般内存的复制。即memcpy对于需要复制的内容没有限制,因此用途更广。void *memcpy( void *dest, const void *src, size_t count );char * strcpy(char * dest, const char * src) // 实现 阅读全文
摘要:
该程序实现的比较简洁,大致的思想是这样的,要精益求精可以随意改进。#include <stdio.h>void main(){ int num = 123456; char str[7]; char temp[7]; int i = 0,j = 0; while(num != 0) { temp[i] = num%10 + '0';//将整数转换为数字字符 i++; num = num/10; } temp[i] = '\0';//对数组进行赋值的时候千万不要忘记最后一个单位赋上字符串结束符,否则后面有乱码 i--;//让i指向字符串结束符前面那个字 阅读全文
摘要:
===前提:我们已经有一个DataTable的数据表 现在需要的只是其中的一行数据===比如说下面这段代码在一个方法里 返回的就是一个DataTable! sqlCon = new SqlConnection(strCon); sqlCom = new SqlCommand(); sqlCom.Connection = sqlCon; sqlCom.CommandText = "select_v"; sqlCom.CommandType = CommandType.StoredProcedure; sqlCon.Open(); sdr = sqlCom.ExecuteRea 阅读全文