Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.06.2009, 00:07   #1
Olejik
Форумчанин
 
Регистрация: 02.06.2009
Сообщений: 218
По умолчанию Поменять буквы из главных в строчные

Добрый день.
Вот пишу курсач, курсач состоит в том, чтобы сделать компилятор асма, но там не настоящего, а какойто палевный, где 46 машинных команд...ну не суть, суть в том, что я напоролся на одну загвоздку, в одном месте я проверяю, есть ли в таблице машинных команд или в таблице псевдокоманд код операции, который мы выделили. В данный момент я нахожусь в затруднении, делов том, что, у нас на асме можно писать машинные команда и псевдокоманды и строчными и прописными, но не буду же я делать 4 массива вместо 2 )))
прошу вас помочь, есть ли такая функция, которая не изменяет строку. а просто игнорирует формат букв и проверяет, т.е. у меня в данном случает:
if (bss == BSS)
{
return 1;
break;
}
return 0;
/*************************/
а мне надо как вы поняли, чтобы он мне не 0 вернул, а 1.
Я прочитал правило, увидел, что надо исходник кинуть, если понадобится, то вырежу лишнее и скину, а то уже весь день сижу над курсачом и измотался.
Заранее благодарю.
Olejik вне форума Ответить с цитированием
Старый 03.06.2009, 00:13   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

В файле ctype.h есть две функции: tolower() и toupper(). Принимают в качестве аргумента символ. Первая делает его строчным, вторая - прописным.
Можно сделать функцию, которая будет возвращать строку, в которой все символы приводятся к строчным.
http://www.cplusplus.com/reference/c...ctype/tolower/
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 03.06.2009, 12:59   #3
Olejik
Форумчанин
 
Регистрация: 02.06.2009
Сообщений: 218
По умолчанию

оппаньки, спасибо, сейчас нато забабашить функцию и затестить )
Olejik вне форума Ответить с цитированием
Старый 03.06.2009, 13:40   #4
Olejik
Форумчанин
 
Регистрация: 02.06.2009
Сообщений: 218
По умолчанию

так, еще проблема, вот сделал, все получилось, просто шикарно...ну почти, у меня вопрос еще один, вот у меня cpp файл:
Код:
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#include <windows.h>
#include "fun.h"

void main (void)
{
	SetConsoleCP (1251);
	SetConsoleOutputCP (1251);
	FILE *in;
	char *buf;
	char *trash;
	char mas[100];
	int r;
	char c;
	int i = 0;
	char raz[] = "\n \t,?.";

	if ((in = fopen("1.txt","r")) == NULL)
	{
		cout << "Error!" << endl;
		exit(1);
	}
	while (!feof(in))
	{
		fgets (mas,100,in);
		r = strlen (mas);
		buf=(char*)calloc(r,sizeof(char));
		strcpy (buf,mas);
		cout << buf << endl;
		trash = strtok(buf,raz);
		while (trash != NULL)
		{
			r = strlen (trash);
			i = 0;
			while (i < r)
			{
				c = trash[i];
				
				trash[i] = toupper(c);
				cout << trash[i];
				i++;
			}
			cout << " ";
			trash = strtok(NULL,raz);
		}
	}
}
/*********************************** *********/
там где начинается цикл while (trash != NULL), я хочу туда сунуть функцию, которая у меня будет описана в хэдере файле, я создал хэдер файл, в нем находится следующее:
Код:
void BIG(char *trash)
{
	int k;
	k = strlen (trash);
	cout << k << endl;
}
/*********************************** ********/
компилятор ругается на строчку: k = strlen(trash);
ошибка:error C2664: 'strlen' : cannot convert parameter 1 from 'char *(__cdecl *)(char *,const char *)' to 'const char *'
There is no context in which this conversion is possible
в хэдере файле, я хочу забубебнить функцию, которая сейчас в срр:
Код:
r = strlen (trash);
i = 0;
while (i < r)
{
	c = trash[i];
	trash[i] = toupper(c);
	cout << trash[i];
	i++;
}
у меня проста всегда проблемы были с хэдерами и передачи чего то в другие функции (

оййй, лишний флуд )))
все нормально, просто забыл по нормальному откомпилировать, работает все )

Последний раз редактировалось Sazary; 03.06.2009 в 13:47.
Olejik вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Получить заголовки главных окон AlexandrSid Общие вопросы Delphi 4 22.05.2009 11:23
все строчные буквы латинского алфавита заменить прописными. Саня7278 Общие вопросы C/C++ 5 20.05.2009 23:52
Строчные буквы в заглавные и наоборот Delphi 7 tarakan1983 Помощь студентам 3 20.03.2009 14:15
дан текстовый массив из 200 букв. Выстроить в алфавитном порядке все строчные буквы Тина Помощь студентам 6 02.07.2008 22:53
Почему скрипт преобразует ЗАГЛАВНЫЕ буквы в строчные??? lex1 Microsoft Office Excel 3 17.03.2008 11:21